1. 申请授权码
在客户端设置,开启授权密码,记得保存,
2.直接上代码
public static void main(String[] args) {//接收方emailString receive="11111111@";//邮件主题String subject="生日祝福!";//邮件内容String content="祝您生日快乐!";//发送方String sendEmail="22222222@";// 授权码,之前所保存的String password="5dxxxxxxxxhe";try {//设置服务器验证信息Properties prop = new Properties();prop.setProperty("mail.smtp.auth", "true");// 加密端口(ssl) prop.setProperty("mail.smtp.timeout", "994");// SSL加密MailSSLSocketFactory sf = new MailSSLSocketFactory();// 设置信任所有的主机sf.setTrustAllHosts(true);prop.put("mail.smtp.ssl.enable", "true");prop.put("mail.smtp.ssl.socketFactory", sf);//设置邮件内容JavaMailSenderImpl javaMailSend = new JavaMailSenderImpl();MimeMessage message = javaMailSend.createMimeMessage();MimeMessageHelper messageHelper = new MimeMessageHelper(message, true, "utf-8");//设置昵称String nick = MimeUtility.encodeText(sendEmail);// 邮件发送者messageHelper.setFrom(new InternetAddress(nick + " <" + sendEmail + ">"));messageHelper.setTo(receive);messageHelper.setSubject(subject);messageHelper.setText(content, true);//设置邮件服务器登录信息javaMailSend.setHost("smtphz.");javaMailSend.setUsername(sendEmail);javaMailSend.setPassword(password);javaMailSend.setJavaMailProperties(prop);javaMailSend.send(message);} catch (Exception e) {e.printStackTrace();}}
引入的包:
import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeUtility;import com.sun.mail.util.MailSSLSocketFactory;import org.springframework.mail.javamail.JavaMailSenderImpl;import org.springframework.mail.javamail.MimeMessageHelper;
以上代码简单调整即可使用(只修改基础信息即可)
3.如果出现报错
AuthenticationFailedException Read timed out
可查看:网易企业邮件发送 AuthenticationFailedException Read timed out
4.邮件模板发送可参照:
模板发送邮件