import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import cn.pjj.bean.User;
public class Email implements Runnable {
private String host = "smtp.163.com";//假设你使用163邮箱
private String email = "xxx@163.com";//你的邮箱地址
private String username = "xxxx@163.com";//用户名称
private String password = "xxxx";//邮箱账户密码
private User user;
public Email(User user) {
this.user = user;
}
@Override
public void run() {
try{
Thread.sleep(1000);
send(user);
}catch (Exception e) {
throw new RuntimeException(e);
}
}
public void send(User user) throws Exception {
Properties prop = new Properties();
prop.setProperty("mail.host", host);
prop.setProperty("mail.transport.protocol", "smtp");
Session session = Session.getInstance(prop);
Message message = createmessage(session, user);
Transport ts = session.getTransport();
ts.connect(username, password);
ts.sendMessage(message, message.getAllRecipients());
ts.close();
}
public Message createmessage(Session session,User user) throws AddressException, MessagingException{
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(email));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(user.getEmail()));//得到用户邮箱
message.setSubject("xxx网站用户注册成功邮件");
//更改你想要发送的内容
String content = "恭喜您,注册成功,您注册的用户名:"+ user.getUsername() +",您注册的密码是:" + user.getPassword() + ",请好好保管您的密码!!";
message.setContent(content, "text/html;charset=UTF-8");
message.saveChanges();
return message;
}
}
注意:前提需要导入javamail的jar包,工具类中User为我自己写的,所以需要根据自己需要自行编写User里面内容。
注册成功如何给用户发送邮件(Java版)
最新推荐文章于 2023-02-14 13:02:12 发布