Spring與Java郵件的集成-創(chuàng)新互聯(lián)

Spring與Java郵件的集成

在這篇SpringJavaMail文章中,您將了解與JavaMail的另一個(gè)Spring集成。本文將允許您使用SpringFramework接口和類發(fā)送和接收電子郵件。您將使用JavaMailAPI發(fā)送和接收郵件。為了獲得更多的理解,您將看到一個(gè)使用EclipseIDE的工作示例。

你所需要的網(wǎng)站建設(shè)服務(wù),我們均能行業(yè)靠前的水平為你提供.標(biāo)準(zhǔn)是產(chǎn)品質(zhì)量的保證,主要從事成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)企業(yè)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計(jì)、成都品牌網(wǎng)站建設(shè)、網(wǎng)頁制作、做網(wǎng)站、建網(wǎng)站。成都創(chuàng)新互聯(lián)公司擁有實(shí)力堅(jiān)強(qiáng)的技術(shù)研發(fā)團(tuán)隊(duì)及素養(yǎng)的視覺設(shè)計(jì)專才。

Java郵件API

SpringFramework有許多用于發(fā)送/接收電子郵件的用戶界面和類。有一個(gè)叫做 org.springframework.mail 。它是一個(gè)根包,它在Spring框架中提供郵件支持。

這,這個(gè),那,那個(gè) 班 和 接口 Spring框架中Java郵件支持所需的定義如下:

Spring與Java郵件的集成

郵件發(fā)送者接口

它是一個(gè)根接口,提供發(fā)送簡(jiǎn)單郵件的基本功能。

JavaMailSender接口

它是MailSender的子接口。它支持MIME消息,并與MimeMessageHelper類一起使用。它用于創(chuàng)建JavaMail MimeMessage。建議使用MimeMrssage制劑機(jī)制來使用此接口。

JavaMailSenderImpl類

它具有JavaMailSender接口的實(shí)現(xiàn),并支持JavaMailMime消息和SpringSimpleMail消息。

SimpleMailMessage類

它幫助創(chuàng)建一個(gè)簡(jiǎn)單的郵件消息,包括從,到,抄送,主題等。

MimeMessage制劑接口

它用作準(zhǔn)備JavaMail MIME消息的回調(diào)接口。

MimeMessageHelper類

它被用作一個(gè)助手類,它包含MIME消息,并提供對(duì)內(nèi)聯(lián)元素(如HTML文本內(nèi)容、圖像等)的支持。

使用Gmail服務(wù)器在Spring中發(fā)送郵件的示例

在本例中,您將看到兩個(gè)SpringMail類:

  • 用于創(chuàng)建消息的SimpleMailMessage。

  • 用于發(fā)送消息的JavaMailSenderImple。

使用Spring框架發(fā)送電子郵件需要以下文件:

  • MailMail.java

  • ApplicationContext.java

  • Test.java

Spring與Java郵件的集成

在開始之前,需要有mail.jar和activation.jar來運(yùn)行這個(gè)示例。

MailMail.java

package com.example;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
public class MailMail{
    private MailSender mailSender;
    public void setMailSender(MailSender mailSender) {
        this.mailSender = mailSender;
    }
    public void sendMail(String from, String to, String subject, String msg) {             SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom(from);
        message.setTo(to);
        message.setSubject(subject);
        message.setText(msg);
        mailSender.send(message);
     }
 }

它是用于定義mailSender屬性的簡(jiǎn)單類,MailSender的對(duì)象將在運(yùn)行時(shí)提供給該屬性。MailSender接口的Send()用于發(fā)送簡(jiǎn)單郵件。

ApplicationContext.xml

在這個(gè)XML文件中,您將為JavaMailSenderImpl類創(chuàng)建一個(gè)bean。您需要定義以下屬性的值:

  • 寄主

  • 用戶名

  • 密碼

  • JavaMailProperties

<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
  <property name="host" value="smtp.gmail.com" />
    <property name="username" value="yourgmailid@gmail.com" />
    <property name="password" value="yourgmailpassword" />
    <property name="javaMailProperties">
       <props>
              <prop key="mail.smtp.auth">true</prop>
              <prop key="mail.smtp.socketFactory.port">465</prop>
              <prop key="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop>
              <prop key="mail.smtp.port">465</prop>
        </props>
    </property>
</bean>
<bean id="mailMail" class="com.example.MailMail">
    <property name="mailSender" ref="mailSender" />
</bean>
</beans>

Spring與Java郵件的集成

Test.java

該類從applicationContext.xml文件中獲取電子郵件的bean,并調(diào)用MailMail類的Sendmail方法。

package com.example;
import org.springframework.beans.factory.*;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.*;
public class Test {
      public static void main(String[] args) {
      Resource r=new ClassPathResource("applicationContext.xml");
      BeanFactory b=new XmlBeanFactory(r);
      MailMail m=(MailMail)b.getBean("mailMail");
      String sender="sendergmailid@gmail.com";//write here sender gmail id
      String receiver="receiveremailid@gmail.com";//write here receiver id
      m.sendMail(sender,receiver,"hi","welcome");
      System.out.println("success");
    }
 }

若要運(yùn)行此示例,請(qǐng)執(zhí)行以下操作:

  • 加載彈簧 java的JAR文件 郵件。

  • Load the jar files mail.jar and activation.jar

  • 更改applicationContext.xml文件中的用戶名和密碼等屬性。

  • 更改Test.java文件中的發(fā)件人Gmail id和接收電子郵件id。

  • 編譯并運(yùn)行Test類。

所以,這都是關(guān)于SpringJavaMail的。希望你喜歡我們的解釋。

結(jié)語

在本節(jié)中,您了解了Spring與Mail API的集成。您看到了如何使用JavaMailAPI來發(fā)送和接收郵件。為了獲得更多的理解,您看到了一個(gè)使用EclipseIDE的Gmail服務(wù)器配置郵件和發(fā)送/接收郵件的工作示例。如果您有任何問題,歡迎在評(píng)論部分提問。

本文標(biāo)題:Spring與Java郵件的集成-創(chuàng)新互聯(lián)
文章分享:http://muchs.cn/article40/ipdho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、網(wǎng)站收錄電子商務(wù)、品牌網(wǎng)站制作、外貿(mào)建站網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)