package cn.itcast.shop.util;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.Message.RecipientType;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.junit.Test;
/**
* 邮件发送工具类
*
* @author 吕小刚
* @version V1.0
*
*/
/*
* 编码实现发送邮件:
* 复制mail.jar和activation.jar
* 删除EE5.0中自带发送邮件jar包:
* windows---->preferences--->lib
* 编写代码完成发送邮件:
*/
public class MailUitls {
/**
* 发送邮件的方法
*
* @param to
* :收件人
* @param code
* :激活码
*/
public static void sedMail(String to, String code) {
/**
* 1,获得一个Session对象.
* 2,创建一个代表邮件的对象Message.
* 3,发送邮件Transport.
*/
// 1,获得连接对象
Properties props = new Properties();
// key:发送邮件的主机是谁;value:主机是localhost
props.setProperty("mail.host", "localhost");
Session session = Session.getInstance(props, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
// 发送邮箱的账号密码
return new PasswordAuthentication("service@shop.com", "service");
}
});
// 2,创建邮件对象:
Message message = new MimeMessage(session);
// 设置发件人:
try {
message.setFrom(new InternetAddress("service@shop.com"));
// 设置收件人:
message.addRecipient(RecipientType.TO, new InternetAddress(to));
// 抄送CC 密送BCC
// 设置标题
message.setSubject("来自SSH商城的官方激活邮件");
// 设置邮件正文
message.setContent("<h1>SSH商城的官方激活邮件!点击下面链接完成激活操作!</h1><h3><a href='http://192.168.31.165:8080/shop/user_action?code=" + code
+ "'>http://192.168.31.165:8080/shop/user_active.action?code=" + code + "</a></h3>", "text/html;charset=UTF-8");
//3,发送邮件
Transport.send(message);
} catch (AddressException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
@Test
public void testMail() throws Exception {
sedMail("aaa@shop.com", UUIDUtils.getUUID());
}
}
邮件发送工具类
最新推荐文章于 2023-07-09 23:03:54 发布