仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 582|回复: 13
打印 上一主题 下一主题

[学习教程] 发布一篇用JavaMail发送带附件的Email

[复制链接]
深爱那片海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:26:28 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
还有就是总有人问我到底该学习什么语言,什么语言有前途,那么我的回答是不论是C,C++,java,.net网页编程,ruby,asp或是其他语言都可以学,编程的关键不是语言,而是思想。
跟着收集使用的不休推行,电子邮件愈来愈多的被人人利用。固然我们常常将电子邮件与Foxmail、Outlook如许的电子邮件客户端接洽起来,可是常常我们也必要本人编程完成发送吸收邮件,比方在一个网站注册用户后网站收回的回执mail,大概在收集购物的时分,在完成定单后的几分钟以内发送确认电子邮件。关于如许的需求,我们不克不及经由过程已有的邮件客户端而必要本人编写邮件发送大概处置程序。在这里向人人解说一下怎样使用JavaMail来完成邮件的收发。
注重:本文只盘算会商JavaMail收发带附件邮件的一些技能,以是只是给出部分代码。
1.发送带附件的邮件
我们平常发送的邮件次要能够分化成2年夜部分,一个是发信人,接信人,主题等邮件标头,别的一部分是邮件内容,它包含了邮件的附件。我们在发送一般邮件的时分content设置的范例是"text/html",带上附件后,我们必要把content的范例设置成Multipart,这时候content包含了附件和"text/html"范例的注释。上面的这个告知人人怎样把附件安排到邮件中。
privateMultipartgetMultipart()throwsMessagingException,UnsupportedEncodingException
{
 MimeMultipartmp=newMimeMultipart();
 try
 {
  //设置content里的内容
  MimeBodyPartcontentMbp=newMimeBodyPart();
  //请指定字符集,不然会是乱码
  contentMbp.setContent(_mailContent.getContent(),"text/html;charset=GB2312");
  mp.addBodyPart(contentMbp);//增加附件
  for(inti=0;i<_mailAttachment.getAttachPath().size();i++)
  {
   MimeBodyPartmbp=newMimeBodyPart();
   FileDataSourcefds=newFileDataSource((String)_mailAttachment.getAttachPath().get(i));
   mbp.setDataHandler(newDataHandler(fds));
   mbp.setFileName(MimeUtility.encodeWord(fds.getName(),"GB2312",null));
   mp.addBodyPart(mbp);
  }
 }
 catch(MessagingExceptionie)
 {
  System.out.println("SetContentMessageerror..."+ie.getMessage());
  throwie;
 }
 catch(UnsupportedEncodingExceptionie)
 {
  System.out.println("EncodethefileNameerror..."+ie.getMessage());
  throwie;
 }
 returnmp;
}
安排附件的注重事项以下:
在发mail时必要注重字符集的成绩。不仅content里要设置,并且文件名也必要设置。假如我们往失落mbp.setFileName(MimeUtility.encodeWord(fds.getName(),"GB2312",null));这句话,那末你选中的附件仍是会带到邮件里,可是在附件里看不到。我们能够经由过程检察邮件巨细晓得。我们使用这个特性来完成发送content中写的是html言语,并且包括图片信息的邮件。
<p>
什么时候上述的三种开发工具能和三为一,什么时候java的竞争力才更强,才有机会拉拢更多的程序员投入到对java的开发上,因为到时的开发工具将会比.net网页编程的更简单。还有一点也很关键,什么时候java推出的jsf能成为真正意义上的标准。
海妖 该用户已被删除
14#
发表于 2015-4-8 18:59:36 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
金色的骷髅 该用户已被删除
13#
发表于 2015-3-20 04:43:44 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
分手快乐 该用户已被删除
12#
发表于 2015-3-12 22:38:34 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
飘飘悠悠 该用户已被删除
11#
发表于 2015-3-11 20:25:49 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
小妖女 该用户已被删除
10#
发表于 2015-3-11 08:02:47 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
第二个灵魂 该用户已被删除
9#
发表于 2015-3-7 02:34:17 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
谁可相欹 该用户已被删除
8#
发表于 2015-2-22 20:49:31 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
再现理想 该用户已被删除
7#
发表于 2015-2-7 18:45:59 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
不帅 该用户已被删除
6#
发表于 2015-2-5 11:54:11 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-5 02:29:02 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
柔情似水 该用户已被删除
地板
发表于 2015-1-27 07:51:26 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
若相依 该用户已被删除
板凳
发表于 2015-1-24 14:50:40 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-21 06:43:00 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 18:58

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表