如何实现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("[email protected]"));
msg.setRecipients(RecipientType.TO, new InternetAddress[]{new InternetAddress("[email protected]")});
msg.setSubject("这是来自java程序的一封邮件");
msg.setText("这是邮件的正文...内容....");
//输入账号密码
Transport trans = session.getTransport();
trans.connect("aa", "123");
trans.sendMessage(msg, msg.getAllRecipients());
}
}