如何实现java发送邮件功能
1.首先下载本地发送邮件的软件,以便与测试
1).先安装mailserver后,添加两个本地用户,如下
2).在安装foxmail后,再与前面一样添加两个用户,且用户名要一样,使用foxmail方便邮件的收发。注意:必须在mailserver添加用户后才能进行发送,且用户名要一致。同时如下:
配置时要填入为本地
2.导入相应的包
3.使用java去实现发收邮件
代码如下:
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.Transport;import javax.mail.Message.RecipientType;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;public class MailDemo1 {
public static void main(String[] args) throws Exception{ Properties prop = new Properties(); prop.setProperty("mail.transport.protocol", "smtp");//协议 prop.setProperty("mail.smtp.host", "localhost");//主机名 prop.setProperty("mail.smtp.auth", "true");//是否开启权限控制 prop.setProperty("mail.debug", "true");//如果设置为true则在发送邮件时会打印发送时的信息 //创建程序到邮件服务器之间的一次会话 Session session = Session.getInstance(prop); //获取邮件对象 Message msg = new MimeMessage(session); msg.setFrom(new InternetAddress("aa@itheima.com")); msg.setRecipients(RecipientType.TO, new InternetAddress[]{new InternetAddress("bb@itheima.com")}); msg.setSubject("这是来自java程序的一封邮件"); msg.setText("这是邮件的正文...内容...."); //输入账号密码 Transport trans = session.getTransport(); trans.connect("aa", "123"); trans.sendMessage(msg, msg.getAllRecipients()); }}