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

java實(shí)現(xiàn)基于SMTP發(fā)送郵件的方法

 更新時(shí)間:2015年07月17日 10:56:23   作者:答復(fù)哈  
這篇文章主要介紹了java實(shí)現(xiàn)基于SMTP發(fā)送郵件的方法,實(shí)例分析了java基于SMTP服務(wù)發(fā)送郵件的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了java實(shí)現(xiàn)基于SMTP發(fā)送郵件的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.apache.log4j.Logger;
public class MailUtil {
 private static Logger logger = Logger.getLogger(MailUtil.class);
 /**
  * 發(fā)送郵件
  * 
  * @param smtp
  *   SMTP服務(wù)器
  * @param user
  *   用戶名
  * @param password
  *   密碼
  * @param subject
  *   標(biāo)題
  * @param content
  *   郵件內(nèi)容
  * @param from
  *   發(fā)件人郵箱
  * @param to
  *   收件人郵箱
  */
 public static void send(String smtp, final String user,
   final String password, String subject, String content, String from,
   String to) {
  try {
   Properties props = new Properties();
   props.put("mail.smtp.host", smtp);
   props.put("mail.smtp.auth", "true");
   Session ssn = Session.getInstance(props, new Authenticator() {
    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
     return new PasswordAuthentication(user, password);
    }
   });
   MimeMessage message = new MimeMessage(ssn);
   //由郵件會(huì)話新建一個(gè)消息對(duì)象 
   InternetAddress fromAddress = new InternetAddress(from);
   //發(fā)件人的郵件地址 
   message.setFrom(fromAddress);
   //設(shè)置發(fā)件人 
   InternetAddress toAddress = new InternetAddress(to);
   //收件人的郵件地址 
   message.addRecipient(Message.RecipientType.TO, toAddress);
   //設(shè)置收件人
   message.setSubject(subject);
   //設(shè)置標(biāo)題
   message.setText(content);
   //設(shè)置內(nèi)容
   message.setSentDate(new Date());
   //設(shè)置發(fā)信時(shí)間 
   Transport transport = ssn.getTransport("smtp");
   transport.connect(smtp, user, password);
   transport.sendMessage(message, message
     .getRecipients(Message.RecipientType.TO));
   // transport.send(message);
   transport.close();
   logger.info("郵件發(fā)送成功");
  } catch (Exception e) {
   logger.warn("郵件發(fā)送失敗", e);
  }
 }
}

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

相關(guān)文章

  • MyBatis-Plus框架整合詳細(xì)方法

    MyBatis-Plus框架整合詳細(xì)方法

    MyBatis-Plus是一個(gè) MyBatis 的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開發(fā)、提高效率而生這篇文章主要介紹了MyBatis-Plus框架整合,需要的朋友可以參考下
    2022-04-04
  • java中利用棧實(shí)現(xiàn)字符串回文算法

    java中利用棧實(shí)現(xiàn)字符串回文算法

    給定一個(gè)由多個(gè)a和b組成的字符串?dāng)?shù)組,字符串中有一個(gè)特殊的字符X,位于字符串的正中間,例如(aaaabbbbXabaabbbb),如何判定該字符串是否回文
    2020-12-12
  • Spring Cloud Stream整合RocketMQ的搭建方法

    Spring Cloud Stream整合RocketMQ的搭建方法

    本文介紹了如何使用SpringCloudStream整合RocketMQ進(jìn)行消息傳遞,SpringCloudStream是一個(gè)用于構(gòu)建與共享消息系統(tǒng)連接的框架,支持持久pub/sub語義和消費(fèi)者組,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • Json傳輸出現(xiàn)中文亂碼問題的解決辦法

    Json傳輸出現(xiàn)中文亂碼問題的解決辦法

    最近遇到一個(gè)問題,就是將中文消息以json格式推給微信服務(wù)器時(shí),收到的消息是亂碼,所以下面這篇文章主要給大家介紹了關(guān)于Json傳輸出現(xiàn)中文亂碼問題的解決辦法,需要的朋友可以參考下
    2023-05-05
  • Log4j詳細(xì)使用教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Log4j詳細(xì)使用教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要為大家詳細(xì)介紹了Log4j的使用教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Kafka簡(jiǎn)單客戶端編程實(shí)例

    Kafka簡(jiǎn)單客戶端編程實(shí)例

    這篇文章主要為大家詳細(xì)介紹了Kafka簡(jiǎn)單客戶端編程實(shí)例,利用Kafka的API進(jìn)行客戶端編程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Java實(shí)現(xiàn)計(jì)網(wǎng)循環(huán)冗余檢驗(yàn)算法的方法示例

    Java實(shí)現(xiàn)計(jì)網(wǎng)循環(huán)冗余檢驗(yàn)算法的方法示例

    這篇文章主要給大家介紹了關(guān)于Java實(shí)現(xiàn)計(jì)網(wǎng)循環(huán)冗余檢驗(yàn)算法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • JAVA多線程處理for循環(huán)數(shù)據(jù)詳細(xì)講解

    JAVA多線程處理for循環(huán)數(shù)據(jù)詳細(xì)講解

    這篇文章主要給大家介紹了關(guān)于JAVA多線程處理for循環(huán)數(shù)據(jù)的相關(guān)資料,我們?cè)诖a中經(jīng)常需要使用for循環(huán)這個(gè)操作來達(dá)到目的,而當(dāng)for循環(huán)的次數(shù)過多時(shí)我們會(huì)發(fā)現(xiàn)執(zhí)行效率會(huì)變的很低,整體耗時(shí)非常多,需要的朋友可以參考下
    2023-07-07
  • Java并發(fā)系列之AbstractQueuedSynchronizer源碼分析(獨(dú)占模式)

    Java并發(fā)系列之AbstractQueuedSynchronizer源碼分析(獨(dú)占模式)

    這篇文章主要為大家詳細(xì)介紹了Java并發(fā)系列之AbstractQueuedSynchronizer源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Java多線程中ThreadLocal解讀

    Java多線程中ThreadLocal解讀

    這篇文章主要介紹了Java多線程中ThreadLocal解讀,??多線程訪問同一個(gè)共享變量的時(shí)候容易出現(xiàn)并發(fā)問題,因此為了保證線程安全性,我們都會(huì)采用加鎖的方式,而ThreadLocal是除加鎖方式之外的另一種保證線程安全性的方法,需要的朋友可以參考下
    2023-09-09

最新評(píng)論

东海县| 溧水县| 杭锦旗| 大竹县| 南汇区| 抚州市| 金寨县| 独山县| 沾益县| 朝阳区| 呼和浩特市| 丰都县| 通海县| 兴山县| 霞浦县| 来凤县| 铅山县| 贵德县| 图片| 油尖旺区| 黄冈市| 连城县| 夏津县| 柘荣县| 休宁县| 鸡泽县| 铁力市| 类乌齐县| 渭源县| 曲麻莱县| 梧州市| 鄂托克前旗| 百色市| 塔河县| 高雄县| 顺昌县| 铁力市| 会昌县| 防城港市| 龙山县| 郓城县|