欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java使用Spring发邮件,javaspring发邮件,package cn.o

来源: javaer 分享于  点击 43432 次 点评:15

java使用Spring发邮件,javaspring发邮件,package cn.o


package cn.outofmemory.spring.mail;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.mail.MailSender;import org.springframework.mail.SimpleMailMessage;import org.springframework.stereotype.Service;@Service("mailService")public class MailService {    @Autowired    private MailSender mailSender;    @Autowired    private SimpleMailMessage alertMailMessage;    public void sendMail(String from, String to, String subject, String body) {        SimpleMailMessage message = new SimpleMailMessage();        message.setFrom(from);        message.setTo(to);        message.setSubject(subject);        message.setText(body);        mailSender.send(message);    }    public void sendAlertMail(String alert) {        SimpleMailMessage mailMessage = new SimpleMailMessage(alertMailMessage);        mailMessage.setText(alert);        mailSender.send(mailMessage);    }}

用了spring就得配置xml,配置文件如下:

<?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"    xmlns:aop="http://www.springframework.org/schema/aop"     xmlns:context="http://www.springframework.org/schema/context"    xmlns:jee="http://www.springframework.org/schema/jee"     xmlns:task="http://www.springframework.org/schema/task"    xsi:schemaLocation="            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd            http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">    <context:component-scan base-package="cn.outofmemory.spring.mail" />        <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">        <property name="host" value="smtp.gmail.com"/>        <property name="port" value="25"/>        <property name="username" value="myusername@gmail.com"/>        <property name="password" value="mypassword"/>        <property name="javaMailProperties">            <props>                <!-- Use SMTP transport protocol -->                <prop key="mail.transport.protocol">smtp</prop>                <!-- Use SMTP-AUTH to authenticate to SMTP server -->                <prop key="mail.smtp.auth">true</prop>                <!-- Use TLS to encrypt communication with SMTP server -->                <prop key="mail.smtp.starttls.enable">true</prop>                <prop key="mail.debug">true</prop>            </props>        </property>    </bean>    <bean id="alertMailMessage" class="org.springframework.mail.SimpleMailMessage">        <property name="from">                        <value>myusername@gmail.com</value>        </property>        <property name="to">                        <value>myusername@gmail.com</value>        </property>        <property name="subject" value="Alert - Exception occurred. Please investigate"/>    </bean></beans>

如果你要用Gmail发邮件,需要确认JavaMail属性正确配置:

host=smtp.gmail.comport=25username=your-gmail-usernamepassword=your-gmail-passwordmail.transport.protocol=smtpmail.smtp.auth=truemail.smtp.starttls.enable=true

最后是测试代码:

package cn.outofmemory.spring.mail;import org.springframework.context.ApplicationContext;import org.springframework.context.support.FileSystemXmlApplicationContext;public class MailServiceTest {    public static void main(String[] args) {        ApplicationContext context = new FileSystemXmlApplicationContext("conf/spring.xml");        MailService mailService = (MailService) context.getBean("mailService");        mailService.sendMail("myusername@gmail.com", "myusername@gmail.com", "Testing123", "Testing only \n\n Hello Spring Email Sender");        mailService.sendAlertMail("Exception occurred");    }}
相关栏目:

用户点评