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

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

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

    spring和quartz進行定時郵件發送!

    Posted on 2006-07-06 18:25 負人博客 閱讀(1610) 評論(1)  編輯  收藏 所屬分類: 框架運用

    一 發送郵件的基類:
    package com.spring.mail;

    import org.springframework.mail.MailSender;
    //import org.springframework.mail.javamail.JavaMailSender;

    public abstract class BaseMailSender {
    ?protected String to;

    ?protected String from;

    ?protected String subject;

    ?protected MailSender sender;
    ?//當發送的郵件為簡單郵件時用MailSender即可;
    ?
    ?//protected JavaMailSender sender;
    ?//當發送的郵件為MIMI時用JavaMailSender
    ?public void setTo(String to) {
    ??this.to = to;
    ?}

    ?public void setFrom(String from) {
    ??this.from = from;
    ?}

    ?public void setSubject(String subject) {
    ??this.subject = subject;
    ?}

    ?public void setJavaMailSender (MailSender sender) {//(JavaMailSender sender) {
    ??this.sender = sender;
    ?}
    }
    發送郵件調用的類:
    package com.spring.mail;

    import javax.mail.MessagingException;

    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.mail.SimpleMailMessage;

    public class SimpleHtmlMailSender extends BaseMailSender{

    ?public void sendMessage() throws MessagingException {
    ??String textStr = "Helo!!!!!!!!!!!";//發送郵件的消息主體??
    ??SimpleMailMessage msg = new SimpleMailMessage();??
    ??msg.setTo(to);
    ??msg.setFrom(from);
    ??msg.setSubject(subject);
    ??msg.setText(textStr);??
    ??sender.send(msg);
    ?}

    ?public void doIt() throws Exception {

    ??ClassPathXmlApplicationContext ctx1 = new ClassPathXmlApplicationContext(
    ????new String[] { "ApplicationContext.xml" });
    ??SimpleHtmlMailSender sender = (SimpleHtmlMailSender) ctx1.getBean("messageSender");
    ??
    ??sender.sendMessage();
    ??System.out.println("發送成功");
    ?}
    }
    配置文件ApplicationContext:
    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " http://www.springframework.org/dtd/spring-beans.dtd ">
    <beans>
    ?<bean id="sender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    ??<property name="host">
    ???<value>smtp.163.com</value>
    ??</property>
    ?? <property name="username">
    ??? <value>tomcat0506</value>
    ??</property>
    ??<property name="password">
    ???<value>wes</value>
    ??</property>
    ???????? <property name="javaMailProperties">
    ????<props>
    ?????<prop key="mail.smtp.auth">true</prop>
    ????</props>
    ???????? </property>
    ??</bean>
    ??<bean id="messageSender" class="com.spring.mail.SimpleHtmlMailSender">
    ??<property name="javaMailSender">
    ???<ref bean="sender"/>
    ?? ?</property>
    ?? ?<property name="to">
    ???<value>wes830506@126.com</value>
    ?? ?</property>
    ?? ?<property name="from">
    ??? <value>tomcat0506@163.com</value>
    ?? ?</property>
    ??<property name="subject">
    ???<value>test</value>
    ?? ?</property>
    ? </bean>


    ?<bean id="methodInvokingJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">??????
    ??
    ??
    ??<!-- <property name="jobClass">
    ???<value>com.spring.mail.SimpleHtmlMailSender</value>
    ??</property>-->

    ??<property name="targetObject"><ref bean="messageSender"/></property>???????
    ??<property name="targetMethod"><value>doIt</value></property>

    ?</bean>

    ?<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
    ??<property name="jobDetail"><ref bean="methodInvokingJobDetail"/></property>
    ??<property name="startDelay">
    ???<!-- 3 seconds -->
    ???<value>3000</value>
    ??</property>
    ??<property name="repeatInterval">
    ???<!-- repeat every 6 seconds -->
    ???<value>6000</value>
    ??</property>
    ?</bean>


    ?<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    ??<property name="jobDetail"> <ref bean="methodInvokingJobDetail"/></property>
    ??<property name="cronExpression"> <value>0 0 6,12,20 * * ?</value>? </property>?
    ?</bean>

    ?<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    ??<property name="triggers">
    ?? ?<list>
    ????<ref local="simpleTrigger"/>
    ???</list>
    ??</property>??
    ?</bean>
    </beans>


    二 mimi郵件發送


    在編寫發送郵件程序時需要用到的類有一下幾個:
    ?org.springframework.mail.javamail.JavaMailSender;
    ?//此類繼承了spring里面的
    ?//MailSender接口--定義了兩個簡單的sender方法,用于發送簡單的郵件信息,參數類型為:SimpleMailMessage([])
    ?//JavaMailSender類繼承了上面方法后支持MIMI郵件,可以發MIMI消息
    ?org.springframework.context.support.ClassPathXmlApplicationContext;
    ?//spring里面讀取配置文件時需要用到的類
    ?org.springframework.mail.javamail.MimeMessageHelper;
    ?//在發送MIMI消息時需要用到的輔助類?


    ?javax.mail.MessagingException;?
    ?javax.mail.internet.MimeMessage;
    ?//J2EE里面支持發送MIMe信息需要的類

    例子:
    發送郵件的基類
    BaseMailSender .java:
    import org.springframework.mail.javamail.JavaMailSender;
    public abstract class BaseMailSender {
    ?protected String to;
    ?protected String from;
    ?protected String subject;
    ?protected JavaMailSender sender;//當發送MIMI消息時用到的類

    ?public void setTo(String to) {
    ? this.to = to;
    ?}
    ?public void setFrom(String from) {
    ? this.from = from;
    ?}
    ?public void setSubject(String subject) {
    ? this.subject = subject;
    ?}
    ?public void setJavaMailSender(JavaMailSender sender) {
    ? this.sender = sender;
    ?}
    }
    發送郵件的類:
    package com.spring.mail;

    import javax.mail.MessagingException;
    import javax.mail.internet.MimeMessage;

    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.mail.SimpleMailMessage;
    import org.springframework.mail.javamail.MimeMessageHelper;

    public class SimpleHtmlMailSender extends BaseMailSender{

    ?public void sendMessage() throws MessagingException {
    ??
    ??//String htmlHead = "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\"></head><body>";
    ??//String htmlBody = "";
    ??//String htmlEnd = "";
    ?//?StringBuffer mailMessage = new StringBuffer();
    ??//mailMessage.append(htmlHead);
    ??//mailMessage.append(htmlBody);
    ??//mailMessage.append(htmlEnd);
    ??
    ??
    ??//當發送的郵件為簡單郵件時注銷此句??
    ??String textStr = "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\"></head><body><h1><a href='#'>^_^!</a></h1></body></html>";

    ??//String textStr = "Helo could you see this email?";//發送郵件的消息主體
    ??
    ??//SimpleMailMessage msg = new SimpleMailMessage();
    ??
    ??//當發送郵件為簡單郵件時把此句注銷即可
    ??
    ??MimeMessage msg = sender.createMimeMessage();
    ??MimeMessageHelper helper = new MimeMessageHelper(msg, true, "GB2312");
    ??
    ??helper.setTo(to);
    ??helper.setFrom(from);
    ??helper.setSubject(subject);
    ??helper.setText(textStr, true);
    ??/*
    ??msg.setTo(to);
    ??msg.setFrom(from);
    ??msg.setSubject(subject);
    ??msg.setText(textStr);
    ??*/
    ??sender.send(msg);
    ?}

    ?public void doIt() throws Exception{//static void main(String[] args) throws Exception {//
    ??//ApplicationContext ctx = new FileSystemXmlApplicationContext(new String[] { "springexample-creditaccount.xml" });

    ??ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext(
    ????new String[] { "ApplicationContext.xml" });

    ??SimpleHtmlMailSender sender = (SimpleHtmlMailSender) ctx
    ????.getBean("messageSender");
    ??sender.sendMessage();
    ??System.out.println("發送成功");
    ?}
    }
    配置文件同上!

    Feedback

    # re: spring和quartz進行定時郵件發送![未登錄]  回復  更多評論   

    2007-09-19 15:23 by allen
    恩 不錯 能繞過垃圾郵件的過濾機制嗎?

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    posts - 26, comments - 5, trackbacks - 0, articles - 8

    Copyright © 負人博客

    主站蜘蛛池模板: 亚洲AV成人无码网站| 在线视频亚洲一区| 无码国产精品一区二区免费16| 亚洲女同成人AⅤ人片在线观看| 国产精品亚洲一区二区三区在线观看| 在线不卡免费视频| 国产AV无码专区亚洲AV麻豆丫| 国产又大又粗又硬又长免费| 国产亚洲福利一区二区免费看| 国产又大又黑又粗免费视频| 日韩在线一区二区三区免费视频| 国产精品亚洲玖玖玖在线观看| 国产在线精品一区免费香蕉| 久久久久久久久亚洲| 国产精品爱啪在线线免费观看| 亚洲综合久久精品无码色欲| 精品久久洲久久久久护士免费 | 久久亚洲精精品中文字幕| 18禁美女黄网站色大片免费观看 | 亚洲AV午夜成人片| 国产精彩免费视频| 免费亚洲视频在线观看| 国产成人综合亚洲AV第一页| 久草免费手机视频| 日韩亚洲人成在线| 亚洲国产综合精品中文字幕 | 日韩高清免费观看| 亚洲精品偷拍视频免费观看| 久久久久亚洲精品美女| 成人免费午夜在线观看| 九九视频高清视频免费观看| 亚洲最大的成网4438| 免费无码又爽又刺激高潮的视频| 亚欧国产一级在线免费| 亚洲a级成人片在线观看| 亚洲狠狠爱综合影院婷婷| 99视频在线看观免费| 国产偷国产偷亚洲高清人| 亚洲日韩区在线电影| 国产一级高清免费观看| 亚洲最大免费视频网|