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

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

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

    posts - 120,  comments - 19,  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也支持一個MailSender的專用于JavaMail特征例如MIME消息子接口,命名為org.springframework.javamail.JavaMailerSener。它也支持一個為JavaMail MIME信息的準備回調接口,命名為org.springframework.mail.JavaMail.MimeMessagePreparator.

    posted on 2006-01-12 15:14 阿成 閱讀(440) 評論(1)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 免费在线看黄网站| 一区在线免费观看| 37pao成人国产永久免费视频| 亚洲人成无码网站久久99热国产| 亚洲精品tv久久久久久久久久| 亚洲国产AV无码一区二区三区| 一区二区三区在线观看免费| 免费国产成人午夜电影| 午夜亚洲WWW湿好爽| 69视频免费观看l| 亚洲成a人不卡在线观看| 精品无码专区亚洲| 一本色道久久88亚洲综合| 亚洲一区二区三区高清不卡| 毛片免费观看的视频| 国产亚洲精品免费| 97人伦色伦成人免费视频| 亚洲免费观看视频| 久久亚洲免费视频| 亚洲人成色7777在线观看| 最新黄色免费网站| 中文字幕在线日亚洲9| 91精品视频在线免费观看| 国产成人精品日本亚洲专区6| 免费看a级黄色片| jizz18免费视频| 亚洲黄色免费网址| 日韩精品免费在线视频| 亚洲一本之道高清乱码| 亚洲成?Ⅴ人在线观看无码| 青草久久精品亚洲综合专区| 中文字幕亚洲激情| 国产99精品一区二区三区免费| 亚洲va无码手机在线电影| 大地资源在线观看免费高清| 一个人看的免费高清视频日本| 久久亚洲AV成人无码电影| 久久免费区一区二区三波多野| 亚洲一区二区观看播放| 亚洲一区二区三区AV无码| 91在线视频免费播放|