本文 java的邮件发送需使用的包为 javamail.jar
注意用qq邮箱时,会出现服务器连接不上的情况
还不知道怎么处理,有人知道的话,希望指点一下,谢谢!!
上代码
import java.security.GeneralSecurityException;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.sun.mail.util.MailSSLSocketFactory;
public class JavamailTest {
public static void main(String[] args) throws GeneralSecurityException, MessagingException {
Properties p=new Properties();
p.setProperty("mail.debug", "true"); //开启debug调试
p.setProperty("mail.smtp.auth", "true"); //身份验证
p.setProperty("mail.host","smtp.163.com"); //邮件服务器主机名
// p.setProperty("mail.smtp.port", "465"); //端口
p.setProperty("mail.transport.protocol","smtp"); //发送邮件协议
MailSSLSocketFactory sf=new MailSSLSocketFactory(); //SSL加密
sf.setTrustAllHosts(true);
p.put("mail.smtp.ssl.enable", "true");
p.put("mail.smtp.ssl.socketFactory",sf);
Session si=Session.getInstance(p);
Message msg=new MimeMessage(si);
msg.setSubject("主题 ");
msg.setText("内容");
msg.setFrom(new InternetAddress("liutianxaut@163.com")); //发送方邮箱
Transport t=si.getTransport();
t.connect("liutianxaut@163.com","密码"); //发送方邮箱 ,密码
t.sendMessage(msg, new Address[]{new InternetAddress("2056437927@qq.com")}); //接收方邮箱
t.close();
}
}