欢迎来到工作总结网!

javamail发送邮件个人学习总结

个人总结 时间:2022-06-14

【www.zgzsclpt.com--个人总结】

javamail发送邮件的简单实例

今天学习了一下 JavaMail,javamail 发送邮件确实是一个比较麻烦的问题。为了以后使用 方便,自己写了段代码,打成 jar 包,以方便以后使用。呵呵以下三段代码是我的全部代码,朋友们如果想用,直接复制即可。

第一个类:MailSenderInfo.javapackage com.util.mail; /** * 发送邮件需要使用的基本信息 *author by wangfun "); mailInfo.setMailServerPort("25"); mailInfo.setValidate(true); mailInfo.setUserName("han2000lei@163.com"); mailInfo.setPassword("**********");//您的邮箱密码 mailInfo.setFromAddress("han2000lei@163.com"); mailInfo.setToAddress("han2000lei@163.com"); mailInfo.setSubject("设置邮箱标题 如 ”。因为你发不出去。刚注册的邮箱是不会给你这种权限的, 也就是你不能通过验证。要使用你经常用的邮箱,而且时间比较长的。

4 、 另 一 个 问 题 就 是 mailInfo.setMailServerHost("smtp.163.com"); 与 mailInfo.setFromAddress("han2000lei@163.com"); 这 两 句 话 。

即 如 果 你 使 用 163smtp 服务器,那么发送邮件地址就必须用 163 的邮箱,如果不的话,是不会发送成功 的。

5、关于 javamail 验证错误的问题,网上的解释有很多,但我看见的只有一个。就是我的第 三个类。你只要复制全了代码,我想是不会有问题的。

javaMail发送邮件(图片,附件)

Java 类库中是带有 javamail 的!所有不需要再下载。

1)运行例子时会出现:Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineOutputStream 这样的错误, 原因是版本不兼容, 后来我没有用 java ee 5.0 而是用 j2ee1.4.自己导入 mail.jar 包就没有出现错误。

2)运行完书本的例子(文本,包含有图片,附件。另外图片是分为两种,一是引用外部资 源,二是嵌入内部) 。对其有个大概的了解。下面给个完整的例子,包含有图片和附件的。

public class ComplexMessage { /** * @param args * @throws MessagingException * @throws AddressException * @throws IOException * @throws FileNotFoundException */ public static void main(String[] args) throws AddressException, MessagingException, FileNotFoundException, IOException { // TODO Auto-generated method stub Session session = Session.getDefaultInstance(new Properties()); // 设置发送邮件 的客户端服务器端环境 MimeMessage message=createMessage( session); message.writeTo(new FileOutputStream("d:\\test3.eml")); } public static MimeMessage createMessage(Session session) throws AddressException, MessagingException{ String from = "4054702459047@qq.com"; String to = "4074505429047@qq.com"; String subject = "test"; String data = "<FONT face= 宋 体 color=#0909f7 size=7><SPAN style='ACKGROUND-COLOR: #6911ee'><SPAN style='BACKGROUND-COLOR: #000000'><SPAN style='BACKGROUND-COLOR: #000000'><SPAN style='BACKGROUND-COLOR: #ffffff'><EM> 华 南 理 工 大 学 </EM> </SPAN></SPAN></SPAN></SPAN></FONT>" +"<img src='cid:test1.jpg'>";Message message = new MimeMessage(session);// 创建MimeMessage实例对象 message.setFrom(new InternetAddress(from)); message.setRecipient(Message.RecipientType.TO, new InternetAddress(to)); message.setSentDate(new Date()); message.setSubject(subject); MimeBodyPart contentPart=createContent(data,"d:\\test.jpg");批注 [f1]: 创建邮件需要填写的发件 人收件人的地址,创建时间,主题 MimeBodyPart attachPart1=createAttachment("d:\\xml.xml"); MimeBodyPart attachPart2=createAttachment("d:\\report13.jasper"); MimeMultipart multipart=new MimeMultipart("mixed"); multipart.addBodyPart(contentPart); multipart.addBodyPart(attachPart1); multipart.addBodyPart(attachPart2); //这里MimeMessage是由MIME对象的消息头和MimeMultipart组成,而MimeMultipart可由 //MimeBodyPart 组成。注意MimeBodyPart 也可以设置MimeMultipart对象 message.setContent(multipart); message.saveChanges(); return (MimeMessage) message;} private static MimeBodyPart createAttachment(String string) throws MessagingException { // TODO Auto-generated method stub MimeBodyPart attchBodyPart=new MimeBodyPart(); FileDataSource fds=new FileDataSource(string); attchBodyPart.setDataHandler(new DataHandler(fds)); //是JAF中的一个类,当MimeBodyPart生成具体的MIME消息时,就会调用DataHandler对象 对数据进行处理,获取所需的数据信息。

attchBodyPart.setFileName(fds.getName()); return attchBodyPart;} private static MimeBodyPart createContent(String data, String MessagingException { // TODO Auto-generated method stub MimeBodyPart contentPart=new MimeBodyPart(); MimeMultipart contentmultipart=new MimeMultipart("related"); MimeBodyPart htmlBodyPart=new MimeBodyPart(); htmlBodyPart.setContent(data, "text/html;charset=gb2312"); contentmultipart.addBodyPart(htmlBodyPart); MimeBodyPart gifBodyPart=new MimeBodyPart(); FileDataSource fds=new FileDataSource(string); gifBodyPart.setDataHandler(new DataHandler(fds)); gifBodyPart.setContentID("test1.jpg"); contentmultipart.addBodyPart(gifBodyPart); contentPart.setContent(contentmultipart); return contentPart; }string)throws }

基于Javamail的邮件收发系统-任务书

信息科学与工程学院 09 学 学 院 号 届本科生毕业设计(论文)任务书 专 业 计算机科学与技术 (师范) 班 级 信息科学与工程 学院 学生姓名 指导教师 一、论文题目 基于 Javamail 的邮件收发系统 二、内容和要求 1.总体目标及性能(参数)要求 (1)系统功能基本完善。

(2)系统具有良好的用户界面。

(3)系统具有较好的人机交互性、易于使用。

(4)系统可靠、稳定,具有一定的应用价值。

2.研究内容及拟采用的技术路线 ? 研究内容: (1)邮件服务器的工作原理。

(2)DNS 服务器的工作原理。

(3)SMTP、POP3、MIME 协议。

(4)设计并实现基于 Javamail 的邮件收发系统,要求系统具有邮件接收、发送等基本功能。

? 采用的技术路线: (1)开发工具采用 Java+JavaMail API。

(2)数据库采用 MySQL 或 SQL Server。

3.参考文献(10 篇以上) [1] Java 邮件开发详解。张孝祥。电子工业出版社,2007。

[2] Java 高级程序设计。王路群主编。中国水利水电出版社, 2006 。

[3] Java 课程设计。黄明, 梁旭, 周绍斌编著。电子工业出版社, 2006。

[4] Java 开发与应用教程。王吴迪, 赵枫朝等编著。电子工业出版社, 2006。

[5] Java 程序设计大学教程。刘艺等编著。机械工业出版社, 2006。

[6] Java 数据库高级编程宝典。陈天河编著。电子工业出版社, 2005。

[7] Java 程序设计与应用开发。於东军等编著。清华大学出版社, 2005。

[8] Java 语言程序设计实训。赵海廷主编。武汉大学出版社, 2005。

[9] Java program design。Cohoon, James P.,Davidson, Jack W。McGraw-Hill Higher Education, 2004。

[10] Thinking in Java。Eckel, Bruce。Prentice Hall, c2000。

[11] Learning Java。Niemeyer, Patrick.,Knudsen, Jonathan。O'Reilly, 2000。

三、起止日期及进度安排(包括论文各阶段的内容和时间安排的要求) 起止日期: 2008 年 8 月 23 日 至 2009 年 5 月 9 日 进度安排: 序号 1 2 3 4 5 时间 2008-9-3~7 2008-9-19 2008-9-20~2009-2-15 2009-2-18~25 2009-2-16~4-30 内容 学生选题,师生见面,联系方法等 任务书下达 完成外文翻译、文献综述、开题报告、论文框架 中期检查(外文翻译、文献综述、开题报告、论文框架) 完成作品设计与论文撰写 电子材料上传(毕业论文:封面、目录、中英文摘要、正文、 6 2009-4-20 参考文献、 作品说明书、 外文翻译、文献综述、 开题报告等) 7 8 2009-4-28 2009-5-9 答辩材料准备,参加答辩 文档材料检查、签名 指导教师 (签名) 2008 年 9 月 15 日 四、教研室(系)审查意见: 教研室 (系) 主任 学院分管院长 (签名) (签名) 年 年 月 月 日 日

本文来源:http://www.zgzsclpt.com/gerenzongjie/181380.html

推荐内容