<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    閔毓
    http://www.eshoo.com.cn 歡迎來到異客中國
    posts - 49,comments - 97,trackbacks - 0
    Spring提供了一個發送電子郵件的高級抽象層,它向用戶屏蔽了底層郵件系統的一些細節,同時負責低層次的代表客戶端的資源處理。Spring郵件抽象層的主要包為org.springframework.mail。它包括了發送電子郵件的主要接口MailSender和 封裝了簡單郵件的屬性如from, to,cc, subject, text的值對象叫做SimpleMailMessage。
    1、我們定義一個發送郵件的接口:OrderManager.java
    1?public?interface?OrderManager?extends?BaseManager{
    2?/**
    3?*email,要發送的郵件地址;
    4?*Code:激活碼
    5?*/
    6??????public?void?placeOrder(String?email);
    7?}

    2、我們需要對該接口進行實現的方法:OrderManagerImpl.java

    ?1?import?javax.mail.Message;
    ?2?import?javax.mail.MessagingException;
    ?3?import?javax.mail.internet.InternetAddress;
    ?4?import?javax.mail.internet.MimeMessage;
    ?5?import?org.springframework.mail.MailException;
    ?6?import?org.springframework.mail.javamail.JavaMailSender;
    ?7?import?org.springframework.mail.javamail.MimeMessagePreparator;
    ?8?import?service.OrderManager;
    ?9??
    11?public?class?OrderManagerImpl?extends?BaseManagerImpl?implements?OrderManager?{
    12?
    13?private?JavaMailSender?mailsender;
    14?private?MyMailMessage?message;
    15?
    16?
    17?????public?void?setMessage(CityMailMessage?message)
    18?????{
    19?????????this.message?=?message;
    20?????}
    21?????public?void?setMailsender(JavaMailSender?mailsender)?{
    22?????????this.mailsender?=?mailsender;
    23?????}
    24?????public?void?placeOrder(final?String?email)?{
    25?????????
    26?
    27?????????MimeMessagePreparator?preparator?=?new?MimeMessagePreparator()?{
    28?????????????public?void?prepare(MimeMessage?mimeMessage)?throws?MessagingException?{
    29?????????????????mimeMessage.setRecipient(Message.RecipientType.TO,?
    30?????????????????????????new?InternetAddress(email));
    31?????????????????mimeMessage.setFrom(new?InternetAddress(message.getFrom()));
    32?????????????????/**轉換編碼為GBK*/
    33?????????????????mimeMessage.setSubject(message.getSubject(),"GBK");
    36?????????????????mimeMessage.setText(email+"<br>"+message.getSubject()+message.getText(),"GBK");
    37?????????????????
    38?????????????}
    39?????????};
    40?????????try{
    41?????????????mailsender.send(preparator);
    42?????????}
    43?????????catch(MailException?ex)?{
    44?????????????//log?it?and?go?on
    45?????????????System.err.println(ex.getMessage());????????????
    46?????????}
    47?????}
    48?}

    3、spring配置發送email的applicationContext-email.xml

    ?1?<?xml?version="1.0"?encoding="UTF-8"?>
    ?2?<!DOCTYPE?beans?PUBLIC?"-//SPRING//DTD?BEAN//EN"
    ?3?????"http://www.springframework.org/dtd/spring-beans.dtd">
    ?4?
    ?5?<beans>
    ?6?????<bean?id="mailSender"?class="org.springframework.mail.javamail.JavaMailSenderImpl">
    ?7?????????<property?name="host">
    ?8?????????????<value>smtp.163.com</value>
    ?9?????????</property>
    10?????????<property?name="username">
    11?????????????<value>username</value>
    12?????????</property>
    13?????????<property?name="password">
    14?????????????<value>password</value>
    15?????????</property>
    16?????????<property?name="javaMailProperties">
    17?????????????<props>
    18?????????????????<prop?key="mail.smtp.auth">true</prop>
    19?????????????????<prop?key="mail.smtp.timeout">25000</prop>
    20?????????????</props>
    21?????????</property>
    22?????</bean>
    23?
    24?????<bean?id="mailMessage"?class="org.springframework.mail.SimpleMailMessage">
    25?????????<property?name="from">
    26?????????????<value>Email</value>
    27?????????</property>
    28?????????<property?name="subject">
    29?????????????<value>標題</value>
    30?????????</property>
    31?????????<property?name="text">
    32?????????????<value>內容</value>
    33?????????</property>
    46?????</bean>
    47?
    48?????<bean?id="orderManager"?class="cn.cityyouth.service.impl.OrderManagerImpl">
    49?????????<property?name="mailsender">
    50?????????????<ref?bean="mailSender"?/>
    51?????????</property>
    52?????????<property?name="message">
    53?????????????<ref?bean="mailMessage"?/>
    54?????????</property>
    55?????</bean>
    56?
    57?</beans>

    4、最后配置自己的jsp頁面以及action

    ?1?package?cn.cityyouth.web.action;
    ?2?
    ?3?import?javax.servlet.http.HttpServletRequest;
    ?4?import?javax.servlet.http.HttpServletResponse;
    ?5?import?org.apache.struts.action.ActionForm;
    ?6?import?org.apache.struts.action.ActionForward;
    ?7?import?org.apache.struts.action.ActionMapping;
    ?8?import?org.apache.struts.action.ActionMessage;
    ?9?import?org.apache.struts.action.ActionMessages;
    10?import?com.test.service.OrderManager;
    11?
    12?public?class?SendMailAction?extends?BaseAction?{
    13?
    14?????/**
    15??????*?Method?execute
    16??????*?
    17??????*?@param?mapping
    18??????*?@param?form
    19??????*?@param?request
    20??????*?@param?response
    21??????*?@return?ActionForward
    22??????*/
    23?????public?ActionForward?execute(ActionMapping?mapping,?ActionForm?form,
    24?????????????HttpServletRequest?request,?HttpServletResponse?response)?{
    25?????????OrderManager?omi=(OrderManager)this.getBean("orderManager");
    26?????????String?useremail="123@163.com";
    27??????????omi.placeOrder(useremail);
    28????????}
    29?}

    到此所有的開發以結束。

    Sring郵件抽象層的主要包是:org.springframework.mail 包。它包含叫MailSender為發送郵件的核心接口和包含簡單郵件屬性例如from,to,cc,subject,text叫SimpleMailMessage的值對象. 這個包也包含一個檢查異常的層次,它支持一個更高級別的抽象超過低級別的郵件系統異常伴隨根異常存在MailException. 請參考JavaDocs為更多的信息雜郵件異常層次。

    spring in action in action also provides a sub-interface of MailSender for specialized JavaMail features such as MIME messages, namely org.springframework.mail.javamail.JavaMailSender It also provides a callback interface for preparation of JavaMail MIME messages, namely org.springframework.mail.javamail.MimeMessagePreparator

    Spring也支持一個MailSender的專用于JavaMail特征例如MIME消息子接口,命名為org.springframework.javamail.JavaMailerSener。它也支持一個為JavaMail MIME信息的準備回調接口,命名為org.springframework.mail.JavaMail.MimeMessagePreparator.

    posted on 2005-12-30 12:49 閔毓 閱讀(2204) 評論(2)  編輯  收藏 所屬分類: Spring in action

    FeedBack:
    # re: 使用Spring郵件抽象層發送簡單郵件(通過自己編寫,更新后發布)1
    2005-12-31 09:16 | zhangwen
    spring的郵件支持不是太好,發信時如果smtp服務器要身份驗證的話就很麻煩,還要自己寫個java mail properties.apache common email做的很好~不過中文支持有些問題  回復  更多評論
      
    # re: 使用Spring郵件抽象層發送簡單郵件(通過自己編寫,更新后發布)1
    2012-08-28 14:16 | 44
    rrrrrrrrrrrrrr  回復  更多評論
      
    主站蜘蛛池模板: 亚洲国产精品无码久久SM| 亚洲愉拍99热成人精品热久久| 亚洲福利一区二区| 久久大香香蕉国产免费网站| 久久精品7亚洲午夜a| 国产成人无码区免费网站| 亚洲日韩精品一区二区三区无码| 久久久精品视频免费观看 | 麻豆成人精品国产免费| 亚洲精品无码久久久久久| 午夜一级毛片免费视频| 国产精品亚洲lv粉色| 波多野结衣中文一区二区免费| 免费国产污网站在线观看不要卡| 亚洲精品国精品久久99热| 最近国语视频在线观看免费播放| 好看的亚洲黄色经典| 13一14周岁毛片免费| 精品久久亚洲中文无码| 性做久久久久免费看| 精品一区二区三区免费视频| 久久青青成人亚洲精品| 免费AA片少妇人AA片直播| 欧美色欧美亚洲另类二区| 久久精品国产亚洲AV不卡| 久久久高清日本道免费观看| 亚洲二区在线视频| 国产精品另类激情久久久免费| 一级毛片大全免费播放| 亚洲国产精品一区| 好大好硬好爽免费视频| 亚洲免费在线观看| 亚洲欧洲日本国产| 亚洲伦乱亚洲h视频| 久久永久免费人妻精品下载| 亚洲欧美日韩中文字幕一区二区三区 | 久久精品亚洲AV久久久无码| 四虎国产精品免费视| 日本视频在线观看永久免费| 亚洲国产AV无码一区二区三区| 亚洲另类激情综合偷自拍图|