最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于JavaMail API收發(fā)郵件的方法

 更新時(shí)間:2015年07月25日 17:31:27   作者:whylyq  
這篇文章主要介紹了基于JavaMail API收發(fā)郵件的方法,實(shí)例分析了javamail的使用方法與相關(guān)注意事項(xiàng),非常具有實(shí)用價(jià)值,需要的朋友可以參考下

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

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

(1)創(chuàng)建和解析郵件內(nèi)容的API :Message類是創(chuàng)建和解析郵件的核心API,它的實(shí)例對(duì)象代表一封電子郵件。
(2)發(fā)送郵件的API:Transport類是發(fā)送郵件的核心API類,它的實(shí)例對(duì)象代表實(shí)現(xiàn)了某個(gè)郵件發(fā)送協(xié)議的郵件發(fā)送對(duì)象,例如SMTP協(xié)議。
(3)接收郵件的API:Store類是接收郵件的核心API類,它的實(shí)例對(duì)象代表實(shí)現(xiàn)了某個(gè)郵件接收協(xié)議的郵件接收對(duì)象,例如POP3協(xié)議。

2. Session類

Session類用于定義整個(gè)應(yīng)用程序所需的環(huán)境信息,以及收集客戶端與郵件服務(wù)器建立網(wǎng)絡(luò)連接的會(huì)話信息,如郵件服務(wù)器的主機(jī)名、端口號(hào)、采用的郵件發(fā)送和接收協(xié)議等。Session對(duì)象根據(jù)這些信息構(gòu)建用于郵件收發(fā)的Transport和Store對(duì)象,以及為客戶端創(chuàng)建Message對(duì)象時(shí)提供信息支持。

3.使用JavaMail發(fā)送一封簡(jiǎn)單的郵件

創(chuàng)建包含郵件服務(wù)器的網(wǎng)絡(luò)連接信息的Session對(duì)象。
創(chuàng)建代表郵件內(nèi)容的Message對(duì)象。
創(chuàng)建Transport對(duì)象、連接服務(wù)器、發(fā)送Message、關(guān)閉連接。

4.實(shí)例

(1)JavaMail郵件只發(fā)送內(nèi)容

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

(2)JavaMail郵件發(fā)送內(nèi)容和圖片

public class SendImageMail {
public static void main(String[] args) throws Exception {
//屬性文件
Properties props=new Properties();
//設(shè)置郵件的發(fā)送主機(jī)名、發(fā)送協(xié)議和是否驗(yàn)證
props.setProperty("mail.host","smtp.sohu.com" );
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.auth", "true");
//獲取發(fā)送接收郵件環(huán)境的對(duì)象
Session session=Session.getInstance(props);
Message message=createMessage(session);
//創(chuàng)建發(fā)送郵件的對(duì)象
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郵件發(fā)送內(nèi)容、圖片和附件

public class SendAttchImageMail {
public static void main(String[] args) throws Exception {
//屬性文件
Properties props=new Properties();
//設(shè)置郵件的發(fā)送主機(jī)名、發(fā)送協(xié)議和是否驗(yàn)證
props.setProperty("mail.host","smtp.sohu.com" );
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.auth", "true");
//獲取發(fā)送接收郵件環(huán)境的對(duì)象
Session session=Session.getInstance(props);
Message message=createMessage(session);
//創(chuàng)建發(fā)送郵件的對(duì)象
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//默默無(wú) 語(yǔ).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;
}
}

注:郵箱地址必須是真實(shí)的

希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • SpringBoot3實(shí)現(xiàn)上傳圖片并返回路徑讓前端顯示圖片

    SpringBoot3實(shí)現(xiàn)上傳圖片并返回路徑讓前端顯示圖片

    這篇文章主要介紹了SpringBoot3實(shí)現(xiàn)上傳圖片并返回路徑讓前端顯示圖片,文中通過(guò)圖文和代碼講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-12-12
  • Java?Collection?接口和常用方法綜合詳解

    Java?Collection?接口和常用方法綜合詳解

    Collection派生出三個(gè)子接口,Set代表不可重復(fù)的無(wú)序集合、List代表可重復(fù)的有序集合、Queue是java提供的隊(duì)列實(shí)現(xiàn),通過(guò)它們不斷的擴(kuò)展出很多的集合類,接下來(lái)我們?cè)敿?xì)介紹一下
    2021-11-11
  • springbean的八種加載方式匯總

    springbean的八種加載方式匯總

    這篇文章主要介紹了springbean的八種加載方式,一種是XML方式聲明bean,使用@Component及其衍生注解@Controller?、@Service、@Repository定義bean,還有其他方法,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • Spring Boot @Scheduled定時(shí)任務(wù)代碼實(shí)例解析

    Spring Boot @Scheduled定時(shí)任務(wù)代碼實(shí)例解析

    這篇文章主要介紹了Spring Boot @Scheduled定時(shí)任務(wù)代碼實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • java 如何實(shí)現(xiàn)日志追蹤MDC

    java 如何實(shí)現(xiàn)日志追蹤MDC

    這篇文章主要介紹了java 實(shí)現(xiàn)日志追蹤MDC方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • java圖片驗(yàn)證碼生成教程詳解

    java圖片驗(yàn)證碼生成教程詳解

    這篇文章主要為大家詳細(xì)介紹了java圖片驗(yàn)證碼生成教程,從簡(jiǎn)單到復(fù)雜,從本地到前后臺(tái),感興趣的小伙伴們可以參考一下
    2016-07-07
  • Spring Cloud構(gòu)建Eureka應(yīng)用的方法

    Spring Cloud構(gòu)建Eureka應(yīng)用的方法

    這篇文章主要介紹了Spring Cloud構(gòu)建Eureka應(yīng)用的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • IntelliJ IDEA引入第三方j(luò)ar包或查看Java源碼的時(shí)候報(bào)decompiled.class file bytecode version:52.0(java 8)錯(cuò)誤的解決辦法

    IntelliJ IDEA引入第三方j(luò)ar包或查看Java源碼的時(shí)候報(bào)decompiled.class file byt

    今天小編就為大家分享一篇關(guān)于IntelliJ IDEA引入第三方j(luò)ar包或查看Java源碼的時(shí)候報(bào)decompiled.class file bytecode version:52.0(java 8)錯(cuò)誤的解決辦法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • Java如何使用逆波蘭式(后綴表達(dá)式)計(jì)算表達(dá)式的值

    Java如何使用逆波蘭式(后綴表達(dá)式)計(jì)算表達(dá)式的值

    這篇文章主要介紹了Java如何使用逆波蘭式(后綴表達(dá)式)計(jì)算表達(dá)式的值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Spring Cloud OAuth2中/oauth/token的返回內(nèi)容格式

    Spring Cloud OAuth2中/oauth/token的返回內(nèi)容格式

    Spring Cloud OAuth2 生成access token的請(qǐng)求/oauth/token的返回內(nèi)容就需要自定義,本文就詳細(xì)介紹一下,感興趣的可以了解一下
    2021-07-07

最新評(píng)論

綦江县| 东源县| 株洲市| 灵台县| 苗栗市| 南充市| 威海市| 白朗县| 习水县| 普陀区| 商水县| 资源县| 凤山市| 柳州市| 久治县| 肇东市| 嘉鱼县| 天柱县| 无极县| 平塘县| 宾川县| 扎兰屯市| 施秉县| 陈巴尔虎旗| 龙游县| 乌兰察布市| 连江县| 克山县| 和平县| 高唐县| 于田县| 正阳县| 平谷区| 许昌县| 定边县| 凉城县| 南康市| 大邑县| 雷波县| 大姚县| 靖边县|