package com.hiredmyway.util.mail;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
public class TestHtmlMessageSender {
/** 在J2ee下javax.mail.*本人用公司的邮箱测试的
* @param args
*/
String protocol = "smtp";
String from = "no-reply@hiredmyway.com";
String to = "ale.hao@logicsolutions.com";
String subject = "HTML_test";
String body = "<a href=http://www.it315.org>" +
"welcome</a></br>" +
"<img src=/"d://attach//home_blue_btn.jpg/">";
public static String user = "ale.hao";
public static String pass = "logic123";
public static void main(String[] args) throws Exception
{
// 邮箱的服务
String server = "mail.logicsolutions.com";
TestHtmlMessageSender sender = new TestHtmlMessageSender();
Session session = sender.createSession();
MimeMessage message = sender.createMessage(session);
Transport transport = session.getTransport();
// 连接用自己的用户和密码一定要正确啊
transport.connect(server, 25, user, pass);
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
public Session createSession()
{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", protocol);
props.setProperty ("mail.smtp.auth","true");
MyAuthenticator authenticator = null;
authenticator = new MyAuthenticator(user,
pass);
Session session = Session.getInstance(props,authenticator);
session.setDebug(true);
return session;
}
public MimeMessage createMessage(Session session) throws Exception
{
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to));
message.setSubject(subject);
MimeMultipart multipart = new MimeMultipart("related");
MimeBodyPart htmlBodyPart = new MimeBodyPart();
htmlBodyPart.setContent(body,"text/html;charset=UTF-8");
multipart.addBodyPart(htmlBodyPart);
MimeBodyPart gifBodyPart = new MimeBodyPart();
// 添加附件的我用一个图片测试的
FileDataSource fds = new FileDataSource("d://attach//logo-tngworldwide.jpg");
gifBodyPart.setDataHandler(new DataHandler(fds));
// gifBodyPart.setContentID("d://attach//logo-tngworldwide.jpg");
//添加文件体
multipart.addBodyPart(gifBodyPart);
message.setContent(multipart);
message.saveChanges();
return message;
}
}
//这是个用户的类主要是用户名和密码
class MyAuthenticator extends Authenticator{
String userName=null;
String password=null;
public MyAuthenticator(){
}
public MyAuthenticator(String username, String password) {
this.userName = username;
this.password = password;
}
protected PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(userName, password);
}
}
用java EE 5 Libraries 测试发E-mail
最新推荐文章于 2021-02-28 07:44:03 发布