一封复杂点的邮件
2013-12-18 20:55
375 查看
package cn.zjgsu.netcom; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.DataSource; import javax.activation.FileDataSource; import javax.mail.Address; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.Multipart; 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; public class Demo3 { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub Properties props = new Properties(); props.setProperty("mail.transport.protocol", "smtp"); props.setProperty("mail.smtp.auth", "true"); Session session = Session.getInstance(props); session.setDebug(true); Message msg = new MimeMessage(session); msg.setSubject("这是另一封复杂邮件"); msg.setFrom(new InternetAddress("netcom_test@163.com")); Multipart msgMultipart = new MimeMultipart("mixed"); msg.setContent(msgMultipart); BodyPart attach1 = new MimeBodyPart(); BodyPart attach2 = new MimeBodyPart(); BodyPart content = new MimeBodyPart(); msgMultipart.addBodyPart(attach1); msgMultipart.addBodyPart(attach2); msgMultipart.addBodyPart(content); DataSource ds1 = new FileDataSource("xxx"); DataHandler dh1 = new DataHandler(ds1); attach1.setDataHandler(dh1); attach1.setFileName("Demo1"); DataSource ds2 = new FileDataSource("xxx"); DataHandler dh2 = new DataHandler(ds2); attach2.setDataHandler(dh2); attach2.setFileName("Demo2"); Multipart bodyMultipart = new MimeMultipart("related"); content.setContent(bodyMultipart); BodyPart msgBodyPart = new MimeBodyPart(); bodyMultipart.addBodyPart(msgBodyPart); BodyPart picBodyPart = new MimeBodyPart(); bodyMultipart.addBodyPart(picBodyPart); DataSource picds = new FileDataSource("xxx"); DataHandler picdh = new DataHandler(picds); picBodyPart.setDataHandler(picdh); picBodyPart.setHeader("Content-Location", "sdnsim.jpg"); msgBodyPart .setContent( "<html><body><font color='red'>这是一封用java生成的邮件!</font><img src='sdnsim.jpg'/></body></html>", "text/html;charset=gb2312"); msg.saveChanges(); Transport transport = session.getTransport(); transport.connect("smtp.163.com", 25, "xxx", "xxx"); transport.sendMessage(msg, new Address[] { new InternetAddress( "xxx") }); transport.close(); } }
有几个问题:
1、邮件正文中的图片是以附件的形式存在
2、相同的代码第一次还能发送,后面看终端显示已经发送成功,但邮件并没有收到
相关文章推荐
- 用MIME协议生成一封复杂的邮件(一)
- 用MIME协议生成一封复杂的邮件(二)
- 用MIME协议生成一封复杂的邮件(三)
- 制作一封复杂的邮件(包括附件、回信地址),并写到文件中
- Joomla如何发送一封 简单的&&复杂的 邮件
- 金笛邮件-给新注册的用户发一封欢迎信
- 史上最复杂的验证邮件地址的正则表达式
- 基于MIME协议创建复杂邮件并发送
- java 发送邮件 email相关操作代码测试,生成复杂格式邮件,发送邮件相关操作
- 写好一封邮件
- Java邮件开发(二):使用JMail发送一封图文并茂且包含附件的邮件(下)
- 基于JavaMail的Java邮件发送:复杂邮件发送
- 作为lead developer写给组员的一封邮件
- 史上最复杂的验证邮件地址的正则表达式
- 你有一封来自比尔·盖茨的未读邮件
- JavaMail的体系结构及发送复杂邮件
- 工作矛盾中产生的一封邮件
- Java Mail(二):JavaMail介绍及发送一封简单邮件
- java发送邮件(一封邮件发给多人)
- 一封谷歌账号辅助邮箱变更的广告邮件