<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 © 負人博客

    主站蜘蛛池模板: 在线免费中文字幕| eeuss影院免费92242部| 一级特黄aa毛片免费观看| 亚洲综合在线另类色区奇米| yellow视频免费看| 亚洲无av在线中文字幕| 在线免费观看h片| 亚洲国产一区二区三区青草影视| 免费一级不卡毛片| 亚洲精品网站在线观看你懂的| 亚洲黄色免费网站| 亚洲AV成人一区二区三区在线看| 性色av免费观看| 免费无码专区毛片高潮喷水| 亚洲欧洲成人精品香蕉网| 无码精品国产一区二区三区免费| 亚洲高清美女一区二区三区| 免费在线观看的网站| 豆国产96在线|亚洲| 国产亚洲精品高清在线| 久久成人免费电影| 亚洲videos| 亚洲精品乱码久久久久久不卡| a级在线免费观看| 亚洲国产精品综合福利专区| 免费观看一级毛片| 99精品全国免费观看视频..| 亚洲综合无码一区二区三区| 香蕉高清免费永久在线视频 | 美女黄网站人色视频免费国产| 最新亚洲人成网站在线观看| 中文字幕一精品亚洲无线一区| 1a级毛片免费观看| 国产亚洲精品2021自在线| 亚洲国产精品成人久久| 成人免费视频软件网站| 中文字幕高清免费不卡视频| 亚洲AV无码一区二区三区人| 亚洲精品乱码久久久久久中文字幕 | 亚洲粉嫩美白在线| a级亚洲片精品久久久久久久|