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

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

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

    Java蜘蛛人 歡迎大家

    歡迎大家 來(lái)到我的blog , 如果我身邊的朋友 有什么不懂可以直接來(lái)問(wèn)我 我會(huì)細(xì)心的幫助你的. 如果網(wǎng)絡(luò)上的朋友有什么不懂的 可以加我Java蜘蛛人 QQ48187537
    posts - 54, comments - 192, trackbacks - 0, articles - 1

          Spring整合javamail成功之后,把大量的代碼配置到spring的配置文件里了,從而降低了Javamail對(duì)郵箱、端口、協(xié)議、主題、內(nèi)容…… 的耦合。在客戶端上只需要調(diào)用一行代碼就可以發(fā)送郵件了。

        首先不需要往項(xiàng)目的lib里導(dǎo)入jar,但是需要在tomcatlib里導(dǎo)入3個(gè)jar文件activation.jar jspsmartupload.jarmail.jar 導(dǎo)入這3個(gè)jar文件,這樣tomcat就不會(huì)報(bào)錯(cuò)了。


     SendManagerService .java

    package com.cgt.itspiderman.service.email;

    public interface SendManagerService {
        
    public void sendMail(String email); 
    }
     定義一個(gè)發(fā)送郵件的接口.


    SendManagerServiceImp.java
    package com.cgt.itspiderman.service.email;

    import javax.mail.Message;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;

    import org.springframework.mail.SimpleMailMessage;
    import org.springframework.mail.javamail.JavaMailSender;
    import org.springframework.mail.javamail.MimeMessagePreparator;

    public class SendManagerServiceImp implements SendManagerService {

        
    private JavaMailSender mailSender;
        
        
    private SimpleMailMessage message;
            
        
    public void sendMail(final String email) {
            
    // TODO Auto-generated method stub
            
            MimeMessagePreparator preparator 
    = new MimeMessagePreparator()
            {
                
    public void prepare(MimeMessage mimeMessage) throws Exception {
                    
                    mimeMessage.setRecipient(Message.RecipientType.TO, 
    new InternetAddress(email));
                    mimeMessage.setFrom(
    new InternetAddress(message.getFrom()));
                    mimeMessage.setSubject(message.getSubject(),
    "gbk");
                    mimeMessage.setText(message.getText(),
    "gbk");
                }
            };
            mailSender.send(preparator);
        
        }
        
        
    public JavaMailSender getMailSender() {
            
    return mailSender;
        }

        
    public void setMailSender(JavaMailSender mailSender) {
            
    this.mailSender = mailSender;
        }

        
    public SimpleMailMessage getMessage() {
            
    return message;
        }

        
    public void setMessage(SimpleMailMessage message) {
            
    this.message = message;
        }

    }
    發(fā)送郵件的實(shí)現(xiàn)類.

     然后在WEB-INF下面創(chuàng)建一個(gè)文件messages.properties    以后修改配置信息直接在這里修改就可以了。
    host=smtp.gmail.com
    username
    =zhengchengqiaobusiness@gmail.com
    password
    =xxxxxx
    port
    =465
    mail.smtp.auth
    =true
    mail.smtp.timeout
    =25000
    mail.smtp.starttls.enable
    =true
    mail.smtp.socketFactory.
    class=javax.net.ssl.SSLSocketFactory
    mail.smtp.socketFactory.fallback
    =false
    from
    =zhengchengqiaobusiness@gmail.com
    subject
    =\u6807\u9898
    text
    =\u5185\u5BB9\u554A

    applicationContext.xml
      .......................

    <
    bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
          
    <property name="locations">
            
    <list>
               
    <value>WEB-INF/mail.properties</value>
            
    </list> 
          
    </property> 
        
    </bean>

        
    <!-- gmail 發(fā)送郵箱的配置文件 -->
           
    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
               
    <property name="host">
                   
    <value>${host}</value>
               
    </property>       
               
    <property name="username">
                   
    <value>${username}</value>
               
    </property>
               
    <property name="password">
                   
    <value>${password}</value>
               
    </property>
               
    <property name="port">
                   
    <value>${port}</value>
               
    </property>
               
    <property name="javaMailProperties">
                   
    <props>
                       
    <prop key="mail.smtp.auth">${mail.smtp.auth}</prop>
                       
    <prop key="mail.smtp.timeout">${mail.smtp.timeout}</prop>
                       
    <prop key="mail.smtp.starttls.enable">${mail.smtp.starttls.enable}</prop>
                       
    <prop key="mail.smtp.socketFactory.class">${mail.smtp.socketFactory.class}</prop>
                       
    <prop key="mail.smtp.socketFactory.fallback">${mail.smtp.socketFactory.fallback}</prop> 
                   
    </props>
               
    </property>
           
    </bean>
           
    <bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage">
               
    <property name="from">
                   
    <value>${from}</value>
               
    </property>
               
    <property name="subject">
                   
    <value>${subject}</value>
               
    </property>
               
    <property name="text">
                   
    <value>${text}</value>
               
    </property>
           
    </bean>
           
    <bean id="sendmail" class="com.cgt.itspiderman.service.email.SendManagerServiceImp">
               
    <property name="mailSender" ref="mailSender"></property>
               
    <property name="message" ref="mailMessage"></property>
           
    </bean>
           
    <!-- end --> 

    ............................


    public static void main(String[] args) {
            
            ApplicationContext context
    = null;
            context 
    = new ClassPathXmlApplicationContext("applicationContext.xml");
            SendManagerService sms
    =    (SendManagerService)context.getBean("sendmail");
            sms.sendMail(
    "zhengchengqiaobusiness@gmail.com");
        }


     如果是在struts2里使用的話需要在Action里加上private SendManagerService sendemail;(加上get和set),然后在spring里配置這個(gè)Action的時(shí)候加上<property name="sendemail" ref="sendmail"></property>
    然后在Action里調(diào)用下面這一行代碼就可以發(fā)送了。
    sendemail.sendMail("zhengchengqiaobusiness@gmail.com");
      寫到這里大家會(huì)問(wèn),如果需要?jiǎng)討B(tài)的修改這個(gè)郵件的內(nèi)容呢?方法很簡(jiǎn)單
         
      WebApplicationContext context=WebApplicationContextUtils.getRequiredWebApplicationContext(ServletActionContext.getServletContext());
            ((SimpleMailMessage) context.getBean(
    "mailMessage")).setText("我現(xiàn)在修改了郵件的內(nèi)容 呵呵呵");

    Feedback

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-04-23 11:45 by Java蜘蛛人 --鄭成橋
    大家有問(wèn)題就問(wèn)我

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-04-23 13:15 by 杰德。張
    鄭老師,最好能講一講關(guān)于webservice的uddi服務(wù)器的建立、發(fā)布等方面的知識(shí)!!

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-04-23 14:13 by Java蜘蛛人 --鄭成橋
    好的 我過(guò)段時(shí)間會(huì)搞個(gè)投票的東西 然大家來(lái)投 。 票數(shù)最多 我就講。

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-05-07 12:33 by 杰德。張
    鄭大哥,你的freemaker視頻不能下載了,能不能在給我提供一個(gè)下載地址,謝謝!!!非常想學(xué)習(xí)學(xué)習(xí)!!!
    zhangjin_2006@126.com

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-05-07 14:04 by Java蜘蛛人 --鄭成橋
    我不是發(fā)到你的郵箱里去了嗎?

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-06-06 22:48 by zjsjava
    你這個(gè)確定現(xiàn)在能用GMAIL發(fā)嗎?

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-08-12 14:14 by 過(guò)路人
    非常不錯(cuò),頂

    # re: Spring 整合javamail 用 gmail 發(fā)送郵件  回復(fù)  更多評(píng)論   

    2009-08-17 14:28 by 咖啡@可樂(lè)
    今天來(lái)學(xué)習(xí)哈!

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲日韩乱码中文字幕| 含羞草国产亚洲精品岁国产精品 | 曰批免费视频播放在线看片二| 国产亚洲视频在线播放大全| 日韩精品免费在线视频| 免费在线观看的网站| 亚洲色偷拍区另类无码专区| 精品亚洲成a人片在线观看 | 成年在线观看免费人视频草莓| 久久亚洲高清综合| 亚洲人成片在线观看| 九九免费久久这里有精品23| 我们的2018在线观看免费高清| 国产亚洲精品无码拍拍拍色欲| 中文字字幕在线高清免费电影| 性做久久久久久免费观看| 国产亚洲福利精品一区| 亚洲色大18成人网站WWW在线播放| 中文字字幕在线高清免费电影| 国产亚洲精品va在线| 欧洲一级毛片免费| 亚洲狠狠婷婷综合久久久久| 亚洲免费观看视频| 国产成人99久久亚洲综合精品| 中国一级特黄的片子免费 | 久久久久亚洲精品日久生情| 一级毛片免费播放试看60分钟| 国产亚洲免费的视频看 | 久久这里只有精品国产免费10| 国产精品无码亚洲精品2021| 中文字幕亚洲图片| 一级人做人a爰免费视频 | 狠狠色香婷婷久久亚洲精品| 9277手机在线视频观看免费| 久久影视国产亚洲| **毛片免费观看久久精品| 亚洲国产香蕉碰碰人人| 国产真人无码作爱视频免费 | 免费人成视频x8x8入口| 亚洲中文字幕久久久一区| 亚洲人成色7777在线观看不卡 |