JavaMail使用5 -- 发送邮件2 -- 发送HTML格式邮件

王朝学院·作者佚名  2009-11-05
窄屏简体版  字體: |||超大  

/**

*

* @param smtp

* SMTP主机地址

* @param port

* SMTP主机地址端口

* @param user

* 用户名

* @param password

* 密码

* @param from

* 发信人

* @param to

* 收信人

* @param cc

* 抄送人

* @param bcc

* 暗送人

* @param subject

* 主题

* @param body

* 内容

* @throws Exception

*/

public static void send(String smtp, int port, String user,

String password, String from, String to, String cc, String bcc,

String subject, String body) throws Exception {

// 变量声明

Properties props = new Properties();// 系统属性

// 设置系统属性

props.put("mail.transport.protocol", "smtp"); // 使用smtp协议

props.put("mail.smtp.auth", "true"); // 是否需要邮件认证

// 获得邮件会话对象

Session mailSession = Session.getDefaultInstance(props, null);

mailSession.setDebug(true);

// 创建MIME邮件对象

MimeMessage mimeMsg = new MimeMessage(mailSession);

// 设置发信人

mimeMsg.setFrom(new InternetAddress(from));

// 设置收信人

if (to != null) {

mimeMsg.setRecipients(Message.RecipientType.TO, InternetAddress

.parse(to));

}

// 设置抄送人

if (cc != null) {

mimeMsg.setRecipients(Message.RecipientType.CC, InternetAddress

.parse(cc));

}

// 设置暗送人

if (bcc != null) {

mimeMsg.setRecipients(Message.RecipientType.BCC, InternetAddress

.parse(bcc));

}

// 设置邮件主题

mimeMsg.setSubject(subject);

// 设置邮件内容,将邮件body部分转化为HTML格式

mimeMsg.setContent(body, "text/html ;charset=gbk");

// 发送邮件

Transport transport = mailSession.getTransport();

transport.connect(smtp, port, user, password);

transport.sendMessage(mimeMsg, mimeMsg.getAllRecipients());

transport.close();

}

这是一个发送HTML格式的邮件,我简单的封装成一个方法。

参数有点多,有些是可选的。

后来,我在开发中为了减少参数,我把参数包装到一个Map中,

重载了这个方法,这样感觉对外开发好一点。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航