Java发送邮件(三)
随着学习的进一步深入,我们这次来探讨带有图片和附件的邮件的生成及发送。
邮件发送的原理如图:
代码大致如下:
Code:
1. public static void main(String[] args) throws Exception{
2. // 创建属性
3. Properties props = new Properties();
4. props.put("mail.smtp.host", "smtp.sohu.com");// 设置smtp主机
5. props.put("mail.smtp.auth", "true");// 使用smtp身份验证
6. // Session session = Session.getInstance(props);
7. Session session = Session.getInstance(props, new Authenticator() {
8. public PasswordAuthentication getPasswordAuthentication() {
9. return new PasswordAuthentication("xxxxzfdw123@sohu.com",
10. "*****");//发件箱的账号和密码
11. }
12. });
13. MimeMessage mime = new MimeMessage(session);
14. //设置发件箱地址
15. mime.setFrom(new InternetAddress("xxxxzfdw123@sohu.com"));
16. //设置收件箱地址
17. mime.setRecipient(Message.RecipientType.TO, new InternetAddress("112345323@qq.com"));
18. //设置主题
19. mime.setSubject("欢迎,Jhon","UTF-8");
20. //设置正文
21. MimeBodyPart part = new MimeBodyPart();
22. part.setContent("欢迎归来!<br><img src='cid:xxx.jpg'>","text/html;charset=UTF-8");//引用的图片id
23. //设置附件
24. MimeBodyPart attch= new MimeBodyPart();
25. DataHandler dh = new DataHandler(new FileDataSource("other\\我们说好的.mp3")); //引用项目中other文件夹中的歌曲
26. attch.setDataHandler(dh);
27. String name = dh.getName();
28. //设置附件的名称
29. attch.setFileName(MimeUtility.encodeText(name));
30. //设置图片
31. MimeBodyPart image = new MimeBodyPart();
32. image.setDataHandler(new DataHandler(new FileDataSource("images\\589.jpg")));//项目中images文件夹中的图片589.jpg
33. image.setContentID("xxx.jpg");
34. //描述关系
35. MimeMultipart mm = new MimeMultipart();
36. mm.addBodyPart(part);
37. mm.addBodyPart(image);
38. mm.addBodyPart(attch);
39. mm.setSubType("mixed");
40.
41. mime.setContent(mm);
42. mime.saveChanges();
43.
44. Transport.send(mime);//发送邮件
45.
46. }
如有不知道或不清楚的类和方法可参考官方API。
以上就是今天的收获,希望对大家有用!
如有问题请发邮件至964761032@qq.com。欢迎交流探讨。
分享到:
相关推荐
javamail开发,带图形界面,邮件的发送,接收,带附件,html,邮件解析
基于javaMail电子邮件系统的设计(含源文件).pdf基于javaMail电子邮件系统的设计(含源文件).pdf基于javaMail电子邮件系统的设计(含源文件).pdf基于javaMail电子邮件系统的设计(含源文件).pdf基于javaMail电子邮件系统...
JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook的应用程序。 虽然...
JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook的应用程序。 JavaMail...
基于Javamail的邮件收发系统是一款简单、方便、快捷的邮件系统。它能实现邮件的接收与发送,并能完成附件的传输,具有较好的人机交互性,易于使用。 开发环境:JDK1.6 + Windows平台 开发技术:Javamail 开发工具:...
内部还有开发javamail所需要的所有jar包 activation.jar mail.jar
javaMail
javamail的jar包:javamail-1.6; javamail的jar包:javamail-1.6
JavaMail,提供给开发者处理电子邮件相关的编程接口。它是用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook的应用程序。 JAF,即为JavaBeans Activation...
javamail 回执邮件资料
本资源是一个集合发送图片,附件,内容,HTML等得JAVAMAIL代码,并且可以同时发送多个附件多个图片,只需填充VO类,即可直接调用并发送邮件,例子已经写好,只要填充上必要值即可,经163,qq,sina测试没有问题,有...
javamail.jar,javamail资源包
使用JAVAMail代发邮件 资源源于不但搜索,自由源于不但努力
包含JavaMail1.4.5、JAF1.1.1、JavaMail API文档英文版,以及JavaMailAPI中文详解
JavaMail_API基本原理,JavaMail_API学习javaMail必备,
截止到上传时间止,jar包全部为最新的jar包,其中javaMail版本为1.5.4、jaf的版本为1.1.1,另外我的博客里有其的具体使用Demo
javamail例子——简单好用 可以直接发电子邮件 1.当工程是java EE 5的时候 在工程里面应该删除java EE 5里面相对应的 jar 路径在 第一个问题就是删除Java EE 5 Libraries/javaee.jar/mail。 第二个问题就是删除Java...
javamail发送邮件实例 javamail 发送邮件 文本编辑器 kindeditor
javaMail API 跟 jar包
JavaMail(JAVA邮件服务) API详解