• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

Spring发邮件

发布: 2007-7-04 13:34 | 作者: admin | 来源:  网友评论 | 查看: 44次 | 进入软件测试论坛讨论

领测软件测试网

这次来看看Spring提高的一些有用过的JEE中使用到的功能,如 发送Email, 执行定时任务...


先来看看发送Email吧, 在Spring中发送Email是很简单的,使用Spring提高的MailSender和MailMessage就可以了,配置代码如下:


<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "spring-beans.dtd" >


<beans>


<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">


<property name="host">


  <value>smtp.163.com</value>


</property>


<property name="javaMailProperties">


  <props>


    <!-- 如果要使用用户名和密码验证,这一步需要 -->


    <prop key="mail.smtp.auth">true</prop>


  </props>


</property>


<property name="username">


<value>你的Email地址</value>


</property>


<property name="password">


<value>你的Email密码</value>


</property>



</bean>


<!-- 简单的message -->



<bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage">


<property name="to">


<value>收件人地址</value>


</property>


<property name="from">


<value>你的地址</value>


</property>


<property name="subject"> <!-- Email 标题 -->


<value>A Spring Mail sender</value>


</property>


</bean>


<!-- 测试发送的类 -->



<bean id="testMailSender" class="test.mail.TestSenderMail">


<property name="mailMessage">


<ref bean="mailMessage"/>


</property>


<property name="mailSender">


<ref bean="mailSender"/>


</property>


</bean>



</beans>


上面的配置好以后就可以直接发送了, 看看TestSenderMail.java的代码:


MILY: ´Courier New´, Courier">package test.mail;

import org.springframework.mail.MailException;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;

public class TestSenderMail {
  private MailSender mailSender;
  private SimpleMailMessage mailMessage;
  
  public TestSenderMail() {
    
  }
  
  public SimpleMailMessage getMailMessage() {
    return mailMessage;
  }
  public void setMailMessage(SimpleMailMessage mailMessage) {
    this.mailMessage = mailMessage;
  }
  public MailSender getMailSender() {
    return mailSender;
  }
  public void setMailSender(MailSender mailSender) {
    this.mailSender = mailSender;
  }
  
  public void sendMail() {
    SimpleMailMessage message = new SimpleMailMessage(mailMessage);
    //设置email内容,
    message.setText("测试Spring 发送Email.");
    
    try {
      mailSender.send(message);
    } catch (MailException e) {
      // TODO Auto-generated catch block
      System.out.println("O . 发送Email失败了....");
      e.printStackTrace();
    }
  }
}


很简单吧. 下面是测试类: TestApp.java


package test.mail;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestApp {

  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    ApplicationContext context = new ClassPathXmlApplicationContext(
        "test/mail/mail.xml");

    TestSenderMail sender = (TestSenderMail) context
        .getBean("testMailSender");
    sender.sendMail();
  }
  //抛出如下异常,是瑞星监控的问题,关闭就可以了
  /**
   * DEBUG SMTP: QUIT failed with 250 O . 发送Email失败了....
   * org.springframework.mail.MailSendException: Could not send mails: 354
   * 
   * com.sun.mail.smtp.SMTPSendFailedException: 354
   * 
   * at
   * com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
   * at com.sun.mail.smtp.SMTPTransport.finishData(SMTPTransport.java:1215) at
   * com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:586)
   */
}


呵呵, 现在就可以发送Email了.

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网