<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野草社区| 亚洲精品一区二区三区四区乱码| 久久精品国产亚洲夜色AV网站| 亚洲理论电影在线观看| 亚洲免费人成在线视频观看| 国产亚洲美日韩AV中文字幕无码成人 | 亚洲一区无码精品色| 亚洲电影日韩精品 | 日韩免费的视频在线观看香蕉| 国产日韩AV免费无码一区二区| 成人久久免费网站| 最近免费中文字幕MV在线视频3| 国产永久免费高清在线| 久久九九AV免费精品| 2019中文字幕免费电影在线播放 | 国产成人无码精品久久久免费| 国产免费播放一区二区| 久久一区二区三区免费| 国精产品一区一区三区免费视频| 久久久精品免费视频| 国产大片免费网站不卡美女 | a级毛片免费观看在线| 精品97国产免费人成视频| 日本免费A级毛一片| 午夜网站在线观看免费完整高清观看 | 亚洲午夜无码久久久久软件| 日韩国产精品亚洲а∨天堂免| 黄色免费在线网址| 99re8这里有精品热视频免费| 日本一卡精品视频免费| 日韩国产免费一区二区三区| 日韩特黄特色大片免费视频| 亚洲成AⅤ人影院在线观看| 亚洲中文字幕无码爆乳AV| 亚洲精品韩国美女在线| 亚洲精品无码永久在线观看男男 | 亚洲人片在线观看天堂无码| 一级一级一片免费高清| 99在线观看免费视频|