1、先导入jar包:mail-1.4.7.jar
java代码:
package com.yunlian.utils;
import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/**
* java 发送邮件
* @author yunlian
*/
public class SendEmail {
public static final String HOST = "smtp.sina.com";
// public static final String HOST = "smtp.qq.com";
public static final String PROTOCOL = "smtp";
public static final int PORT = 25;
//qq需要使用企业邮箱 smtp.exmail.qq.com ,使用SSL,端口号465
public static final String FROM = "xxxx@xxx.com";//发件人的email
public static final String PWD = "xxxx";//发件人密码
/**
* 获取Session
* @return
*/
private static Session getSession() {
Properties props = new Properties();
props.put("mail.smtp.host", HOST);//设置服务器地址
props.put("mail.store.protocol" , PROTOCOL);//设置协议
props.put("mail.smtp.port", PORT);//设置端口
props.put("mail.smtp.auth" , true);
Authenticator authenticator = new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(FROM, PWD);
}
};
Session session = Session.getDefaultInstance(props , authenticator);
return session;
}
public static void send(String toEmail , String content) {
Session session = getSession();
try {
System.out.println("--send--"+content);
// Instantiate a message
Message msg = new MimeMessage(session);
//Set message attributes
msg.setFrom(new InternetAddress(FROM));
InternetAddress[] address = {new InternetAddress(toEmail)};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject("账号激活邮件");
msg.setSentDate(new Date());
msg.setContent(content , "text/html;charset=utf-8");
//Send the message
Transport.send(msg);
}
catch (MessagingException mex) {
mex.printStackTrace();
}
}
public static void main(String[] args) {
String content = "欢迎注册网站,你的注册密码是:"+(int)(Math.random()*9999+1)
+",请不要轻易泄露";
String toEmail = "6106278521@qq.com";
// String toEmail = "11648758181@qq.com";
send(toEmail, content);
}
}