




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
邮件原理21创建邮件 MIME协议MIME协议是对RFC822文档的升级和补充,它描述了如何生成一封复杂邮件。通常我们把MIME协议描述的邮件称之为MIME邮件,MIME协议描述的数据称之为MIME消息。对于一封复杂邮件,如果包含了多个不同的数据,MIME协议规定了要使用分隔线对多段数据进行分隔,并使用Content-Type头字段对数据的类型、以及多个数据之间的关系进行描述。(查看outlook邮件源文件)2 MIME协议常用头字段(1)Content-type:字段数据类型 以“主类型/子类型”的形式出现,主类型有text、image、audio、video、application、message等,分别表示文本、图片、音频、视频、应用程序、组合结构、消息等。每个主类型下面都有多个子类型,例如text主类型包含plain、html、xml、css等子类型。 数据的关系multipart/mixed、multipart/related、multipart/alternative(2)Content-Disposition头字段Content-Disposition头字段用于指定邮件阅读程序处理数据内容的方式,有inline和attachment两种标准方式,inline表示直接处理,而attachment表示当作附件处理。如果将Content-Disposition设置为attachment,在其后还可以指定filename属性,如下所示:Content-Disposition: attachment; filename=“1.bmp”上面的MIME头字段表示MIME消息体的内容为邮件附件,附件名“1.bmp”(3)Content-ID头字段Content-ID头字段用于为“multipart/related”组合消息中的内嵌资源指定一个唯一标识号,在HTML格式的正文中可以使用这个唯一标识号来引用该内嵌资源。例如,假设将一个表示内嵌图片的MIME消息的Content-ID头字段设置为如下形式:Content-ID: it315logo_gif那么,在HTML正文中就需要使用如下HTML语句来引用该图片资源: 注意,在引用Content-ID头字段标识的内嵌资源时,要在资源的唯一标识号前面加上“cid:”,以说明要采用唯一标识号对资源进行引用。3邮件组织结构相关的APIMimeMessage类表示整封邮件。MimeBodyPart类表示邮件的一个MIME消息。MimeMultipart类表示一个由多个MIME消息组合成的组合MIME消息。4.实例(1) 邮件只发送内容public class MimeMail public static void main(String args) throws Exception /创建邮件MimeMessagemessage=newMimeMessage(Session.getInstance(new Properties();/设置邮件属性message.setFrom(new InternetAddress();message.setRecipients(Message.RecipientType.TO, );message.setSubject(haiyan);/正文MimeBodyPart part=new MimeBodyPart();part.setContent(haoa你好,text/html);/描述关系MimeMultipart mm=new MimeMultipart();mm.addBodyPart(part);message.setContent(mm);message.saveChanges();message.writeTo(new FileOutputStream(D:1.eml);(2) 邮件发送内容和一张图片public class MimeImageMail public static void main(String args) throws Exception /创建邮件MimeMessage message=new MimeMessage(Session.getInstance(new Properties();/设置邮件属性message.setFrom(new InternetAddress();message.setRecipient(Message.RecipientType.TO, new InternetAddress();message.setSubject(给你发个美女的照片);/正文MimeBodyPart text=new MimeBodyPart();text.setContent(哥你好啊,好好照顾自己,text/html;charset=gb2312);MimeBodyPart image=new MimeBodyPart();image.setDataHandler(new DataHandler(new FileDataSource(srcf.jpg);image.setContentID(xx.jpg);MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);mm.addBodyPart(image);mm.setSubType(related);message.setContent(mm);message.saveChanges();message.writeTo(new FileOutputStream(D:2.eml);(3) 邮件发送内容和多张图片public class MimeManyMail public static void main(String args) throws Exception /创建邮件MimeMessagemessage=newMimeMessage(Session.getInstance(new Properties();/设置邮件属性message.setFrom(new InternetAddress();message.setRecipient(Message.RecipientType.TO,new InternetAddress();message.setSubject(看照片);/正文MimeBodyPart text=new MimeBodyPart();text.setContent(好好看看,哪张漂亮啊你选哪个 ,text/html;charset=gb2312);MimeBodyPart image=new MimeBodyPart();image.setDataHandler(new DataHandler(new FileDataSource(srcf.jpg);image.setContentID(xx.jpg);MimeBodyPart image2=new MimeBodyPart();DataHandler dh=new DataHandler(new FileDataSource(src美.jpg);image2.setDataHandler(dh);image2.setContentID(yy.jpg);String filename=dh.getName();image2.setFileName(MimeUtility.encodeText(filename);/描述关系MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);mm.addBodyPart(image);mm.addBodyPart(image2);mm.setSubType(related);message.setContent(mm);message.saveChanges();message.writeTo(new FileOutputStream(D:4.eml);(5) 邮件发送内容和附件public class AttchMime public static void main(String args) throws Exception /创建邮件MimeMessagemessage=newMimeMessage(Session.getInstance(new Properties();/设置邮件属性message.setFrom(new InternetAddress();message.setRecipient(Message.RecipientType.TO, new InternetAddress();/正文MimeBodyPart text=new MimeBodyPart();text.setContent(给你发个美女的照片好看不,text/html;charset=gb2312);MimeBodyPart attch=new MimeBodyPart();attch.setDataHandler(new DataHandler(new FileDataSource(src1.mp3);attch.setFileName(1.mp3);/描述关系MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);mm.addBodyPart(attch);mm.setSubType(mixed);message.setContent(mm);message.saveChanges();message.writeTo(new FileOutputStream(d:3.eml);(6) 邮件发送内容、多个图片和附件public class MailImageAndAttchpublic static void main(String args) throws Exception/创建邮件MimeMessage message=new MimeMessage(Session.getInstance(new Properties();/设置邮件属性message.setFrom(new InternetAddress();message.setRecipient(Message.RecipientType.TO, new InternetAddress();message.setSubject(复杂的邮件);/正文MimeBodyPart text=new MimeBodyPart();text.setContent(我给你发两张图片和一首歌,text/html;charset=gb2312);MimeBodyPart image=new MimeBodyPart();image.setDataHandler(new DataHandler(new FileDataSource(srcf.jpg);image.setContentID(xx.jpg);MimeBodyPart image2=new MimeBodyPart();DataHandler dh1=new DataHandler(new FileDataSource(src美.jpg);image2.setDataHandler(dh1);image2.setContentID(yy.jpg);String filename=dh1.getName();image2.setFileName(MimeUtility.encodeText(filename);MimeBodyPart attch=new MimeBodyPart();DataHandler dh=new DataHandler(new FileDataSource(src默默无语.mp3);attch.setDataHandler(dh);String name=dh.getName();attch.setFileName(MimeUtility.encodeText(name);MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);mm.addBodyPart(image);mm.addBodyPart(image2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江苏南昌市劳动保障事务代理中心招聘劳务派遣人员考试参考试题及答案解析
- 2025年留学小知识题目及答案
- 运输场地出租合同
- 培训安置协议书范文
- 今年素描考试题目及答案
- 2025合肥市园上园小学喻岗分校教师招聘考试参考试题及答案解析
- 2025榆林佳县聘县融媒体中心节目主持人(2人)备考练习题库及答案解析
- 2025年河北秦皇岛市妇幼保健院招聘编外人员4人考试参考试题及答案解析
- 2025湖北恩施州鹤峰县县直教育单位选调教师20人备考练习试题及答案解析
- 2025黑龙江省铁路集团有限责任公司招聘1人备考练习试题及答案解析
- 资质备案管理办法
- 设备维护保养基础知识
- GB/T 45760-2025精细陶瓷粉体堆积密度测定松装密度
- 职业技能鉴定机构备案表(空表)
- 补肾养血膏方联合PRP治疗肝肾亏虚型膝骨关节炎的临床疗效观察
- 医疗机构依法执业自查
- 专项复习:相似三角形折叠问题(分层练习)(综合练)
- 角色设计课程说课模板
- DB13T 5098-2019 无人值守起重机控制系统检验规则
- 被动解除劳动合同范本
- XX学校(幼儿园)食堂管理各岗位廉政(廉洁)风险点及防控措施一览表
评论
0/150
提交评论