为什么80%的码农都做不了架构师?>>>
package com;
import java.io.UnsupportedEncodingException;
import java.security.GeneralSecurityException;
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 com.sun.mail.smtp.SMTPMessage;
import com.sun.mail.util.MailSSLSocketFactory;
class SimpleAuthenticator extends Authenticator{
private String userName;
private String password;
public SimpleAuthenticator(String userName, String password) {
super();
this.userName = userName;
this.password = password;
}
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(this.userName, this.password);
}
}
public class MailTest {
public static void sendMail() throws UnsupportedEncodingException, GeneralSecurityException{
String userName = "xxxx@qq.com";
String password="xxxx";
String subject = "发邮件进行测1111111试"; // 邮件标题
String body = "怎么样 可以112222222了没!"; // 邮件内容
Properties props=System.getProperties();
MailSSLSocketFactory sf = new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
props.put("mail.smtp.host", "smtp.qq.com");
props.put("mail.smtp.auth","true");
props.put("mail.smtp.socketFactory.port", 465);
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.ssl.socketFactory", sf);
props.put("mail.smtp.starttls.enable", "true");
props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
// props.setProperty("mail.smtp.port", "465");
// Session session=Session.getDefaultInstance(props);
Session session = Session.getDefaultInstance(props,new SimpleAuthenticator(userName, password) );
session.setDebug(true);
SMTPMessage message=new SMTPMessage(session);
try {
message.setRecipient(Message.RecipientType.TO,new InternetAddress("mmmm@163.com"));//收件人
message.setSubject(subject);
message.setText(body);
String nickName="王大锤";
nickName=javax.mail.internet.MimeUtility.encodeText(nickName);
message.setFrom(new InternetAddress(nickName+" <xxxx@qq.com>"));//设置发件人 发件人必须要和Authenticator验证的帐号一致
Transport transport = session.getTransport("smtp");
transport.connect(userName, password);
transport.send(message);
transport.close();
} catch (MessagingException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
try {
MailTest.sendMail();
} catch (Exception e) {
e.printStackTrace();
}
}
}