81,122
社区成员




public class EmaiSender {
private static final String defaultSMTPHost = "smtp.sohu.com";
private static final String defaultMailFromName = "aaa@sohu.com";
private static final String defaultMailFromPassword = "123";
public static int send(String mailTos, String mailSubject, String mailText) {
//check params
if (mailTos == null || mailSubject == null || mailText == null) return 0;
//encoding params
String encoding = "iso-8859-1";
try {
//正文编码
mailText = new String(mailText.getBytes(), encoding);
} catch (UnsupportedEncodingException e) {
System.out.println("Fail to encoding mail text to " + encoding);
}
Properties props = new Properties();
props.put("mail.smtp.host", defaultSMTPHost);//邮件服务器地址
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.user", "CTOPAY");//发送方的发送名;
props.put("mail.smtp.from", defaultMailFromName);//发送邮箱地址;
props.put("mail.debug", "false");//不打印构建发送者信息
//构建发送者
Authenticator auth = new Authenticator() {
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(defaultMailFromName, defaultMailFromPassword);
}
};
Session session = Session.getInstance(props, auth);
session.setDebug(false);//不打印发送信息
Message msg = new MimeMessage(session);
int sendNum = 0;//发送的数量
for (String mailTo : mailTos.split(",")) {
try {
InternetAddress[] addresses = {new InternetAddress(mailTo)};
msg.setRecipients(Message.RecipientType.TO, addresses);//设置邮件接收地址集
msg.setSentDate(new java.util.Date());//设置邮件发送日期
msg.setSubject(mailSubject);// 设置邮件的标题
// msg.setText(mailText);// 设置邮件的内容(文本)
msg.setContent(mailText, "text/html");// 设置邮件的内容
Transport.send(msg);//发送邮件
sendNum++;//发送记数
System.out.println(mailText);
System.out.println("Success to send email to " + mailTo);
} catch (MessagingException e) {
System.out.println("Fail to send email for:" + e);
}
}
return sendNum;
}
public static void main(String[] args) {
String to = "test@qq.com";
String subject = "测试";
String text = "<table align=center width=100%><tr><td align=left>" +
"王,你好<br> 数据缺失,请核查!" +
"</td></tr></table>";
int i = send(to, subject, text);
System.out.println("i = " + i);
}
}
//下面这个方法去调用send方法:
public void taskCheck(){
String to = "test@qq.com";
String subject = "测试";
String text = "<table align=center width=100%><tr><td align=left>" +
"王,你好<br> 数据缺失,请核查!" +
"</td></tr></table>";
int i = EmailSender.send(to, subject, text);
System.out.println("i = " + i); if(true)
return;
}