国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

基于JavaMail API收發郵件的方法

2019-11-26 15:03:59
字體:
來源:轉載
供稿:網友

本文實例講述了基于JavaMail API收發郵件的方法。分享給大家供大家參考。具體如下:

1.JavaMail API按其功能劃分通常可分為如下三大類

(1)創建和解析郵件內容的API :Message類是創建和解析郵件的核心API,它的實例對象代表一封電子郵件。
(2)發送郵件的API:Transport類是發送郵件的核心API類,它的實例對象代表實現了某個郵件發送協議的郵件發送對象,例如SMTP協議。
(3)接收郵件的API:Store類是接收郵件的核心API類,它的實例對象代表實現了某個郵件接收協議的郵件接收對象,例如POP3協議。

2. Session類

Session類用于定義整個應用程序所需的環境信息,以及收集客戶端與郵件服務器建立網絡連接的會話信息,如郵件服務器的主機名、端口號、采用的郵件發送和接收協議等。Session對象根據這些信息構建用于郵件收發的Transport和Store對象,以及為客戶端創建Message對象時提供信息支持。

3.使用JavaMail發送一封簡單的郵件

創建包含郵件服務器的網絡連接信息的Session對象。
創建代表郵件內容的Message對象。
創建Transport對象、連接服務器、發送Message、關閉連接。

4.實例

(1)JavaMail郵件只發送內容

public class SendMail {public static void main(String[] args) throws Exception {//屬性文件Properties props=new Properties();//設置郵件的發送主機名、發送協議和是否驗證props.setProperty("mail.host","smtp.sohu.com" );props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.auth", "true");//獲取發送接收郵件環境的對象Session session=Session.getInstance(props);Message message=createMessage(session);//創建發送郵件的對象Transport tsp=session.getTransport();tsp.connect("jb51", "jb51");tsp.sendMessage(message, message.getAllRecipients());tsp.close();}public static Message createMessage(Session session) throws Exception{//根據環境對象創建一份郵件MimeMessage message=new MimeMessage(session);//設置郵件屬性message.setFrom(new InternetAddress("jb51@sohu.com"));message.setRecipient(Message.RecipientType.TO,new InternetAddress("jb51@sina.com"));message.setSubject("hello");//創建郵件體MimeBodyPart text=new MimeBodyPart();text.setContent("你好?","text/html;charset=utf-8");//設置描述關系MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);message.setContent(mm);message.saveChanges();return message;}}

(2)JavaMail郵件發送內容和圖片

public class SendImageMail {public static void main(String[] args) throws Exception {//屬性文件Properties props=new Properties();//設置郵件的發送主機名、發送協議和是否驗證props.setProperty("mail.host","smtp.sohu.com" );props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.auth", "true");//獲取發送接收郵件環境的對象Session session=Session.getInstance(props);Message message=createMessage(session);//創建發送郵件的對象Transport tsp=session.getTransport();tsp.connect("jb51", "jb51");tsp.sendMessage(message, message.getAllRecipients());tsp.close();}public static Message createMessage(Session session) throws Exception{MimeMessage message=new MimeMessage(session);message.setFrom(new InternetAddress("jb51@sohu.com"));message.setRecipient(Message.RecipientType.TO,new InternetAddress("jb51@sina.com"));message.setSubject("圖片");MimeBodyPart text=new MimeBodyPart();text.setContent("好看嗎?<br/><img src='cid:xx.jpg'>","text/html;charset=utf-8");MimeBodyPart image=new MimeBodyPart();image.setDataHandler(new DataHandler(new FileDataSource("src//f.jpg")));image.setContentID("xx.jpg");MimeMultipart mm=new MimeMultipart();mm.addBodyPart(text);mm.addBodyPart(image);mm.setSubType("related");message.setContent(mm);message.saveChanges();return message;}}

(3)JavaMail郵件發送內容、圖片和附件

public class SendAttchImageMail {public static void main(String[] args) throws Exception {//屬性文件Properties props=new Properties();//設置郵件的發送主機名、發送協議和是否驗證props.setProperty("mail.host","smtp.sohu.com" );props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.auth", "true");//獲取發送接收郵件環境的對象Session session=Session.getInstance(props);Message message=createMessage(session);//創建發送郵件的對象Transport tsp=session.getTransport();tsp.connect("jb51", "jb51");tsp.sendMessage(message, message.getAllRecipients());tsp.close();}public static Message createMessage(Session session) throws Exception{MimeMessage message=new MimeMessage(session);message.setFrom(new InternetAddress("jb51@sohu.com"));message.setRecipient(Message.RecipientType.TO,new InternetAddress("jb51@sina.com"));message.setSubject("圖片");MimeBodyPart text=new MimeBodyPart();text.setContent("好看嗎?<br/><img src='cid:xx.jpg'>","text/html;charset=utf-8");MimeBodyPart image=new MimeBodyPart();image.setDataHandler(new DataHandler(new FileDataSource("src//f.jpg")));image.setContentID("xx.jpg");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.setSubType("related");MimeBodyPart part=new MimeBodyPart();part.setContent(mm);MimeMultipart m=new MimeMultipart();m.addBodyPart(part);m.addBodyPart(attch);m.setSubType("mixed");message.setContent(m);message.saveChanges();return message;}}

注:郵箱地址必須是真實的

希望本文所述對大家的java程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普洱| 灌南县| 武冈市| 亚东县| 高碑店市| 左云县| 博白县| 平凉市| 梨树县| 光山县| 唐海县| 承德市| 桦南县| 阳信县| 紫阳县| 霍城县| 繁峙县| 合江县| 凤台县| 康平县| 泾川县| 新蔡县| 昔阳县| 大理市| 枣阳市| 桂阳县| 科技| 沙雅县| 青岛市| 崇信县| 沙田区| 扎赉特旗| 赞皇县| 务川| 彭阳县| 定陶县| 花垣县| 汝阳县| 明溪县| 平南县| 中山市|