Jmail邮箱发送系统简单案例(qq邮箱)
不多说,直接上代码:
需要的核心依赖jar
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.5</version>
</dependency>`
详细java代码
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
public static void main(String[] args) throws Exception {
Properties props = new Properties();
props.setProperty("mail.smtp.host", "smtp.qq.com");//发送邮箱服务器
props.setProperty("mail.smtp.port", "465");//发送端口
props.setProperty("mail.smtp.auth", "true");//是否开启权限控制
props.setProperty("mail.debug", "true");//true 打印信
props.setProperty("mail.transport.protocol", "smtp");//指定邮件发送的协议,参数是规范规 定的// 到控制台
props.setProperty("mail.smtp.ssl.enable", "true");//使smtp协议生效
Session session = Session.getDefaultInstance(props);
session.setDebug(true); //打开debug功能
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("xxx@qq.com"));//设置发件人
msg.setRecipient(Message.RecipientType.TO, new InternetAddress("yyy@qq.com")); //设置收件人
msg.setSubject("test"); //设置邮件主题
String s = UUID.randomUUID().toString();//设置邮箱正文内容
msg.setContent("<h1>欢迎访问掳走编写页面,您的验证码是" + s + "</h1>", "text/html;Charset=UTF-8");
//发送邮件
Transport trans = session.getTransport();
trans.connect("xxx@qq.com", "fzezkbnbprtsfiab"); //设置发件人及其授权码
trans.sendMessage(msg, msg.getAllRecipients());
trans.close(); //关闭连接
}