kwj

走越远,路越艰!

常用链接

统计

最新评论

spring邮件发送

//SystemMailSender.class

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;

import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;

/**
 * 系统邮件发送者,负责向系统管理员账号发送邮件.
 *
 */
public class SystemMailSender
{
    private String encode;

    private JavaMailSender javaMailSender;

    private String systemMail;

    public String getEncode()
    {
        return encode;
    }

    public String getSystemMail()
    {
        return systemMail;
    }

    public void send(String subject,String content) throws MessagingException
    {
        send(subject,content,new String[]{systemMail});
    }

    public void send(String subject,String content,String receiver) throws MessagingException
    {
        send(subject,content,new String[]{receiver});

    }

    public void send(String subject,String content,String[] receiver) throws MessagingException
    {
        MimeMessage mimeMsg=javaMailSender.createMimeMessage();
        MimeMessageHelper helper=new MimeMessageHelper(mimeMsg,true,encode);
        helper.setTo(receiver);
        helper.setFrom(systemMail);
        helper.setSubject(subject);
        helper.setText(content,true);
        javaMailSender.send(mimeMsg);
    }

    public void setEncode(String encode)
    {
        this.encode=encode;
    }

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

    public void setSystemMail(String systemMail)
    {
        this.systemMail=systemMail;
    }
}
//配置文件applicationContext-email.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
        "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans default-lazy-init="true">
    <!--Spring Mail Sender-->
    <bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host" value="mail.126.com"/>
        <property name="username" value="root@126.com"/>
        <property name="password" value="password"/>
        <property name="javaMailProperties">
            <props>
                <prop key="mail.smtp.auth">true</prop>
            </props>
        </property>
    </bean>

    <!--系统邮件投递组件-->
    <bean id="systemMailSender" class="com.service.SystemMailSender"
          autowire="byName">
        <property name="systemMail">
            <value>root@126.com</value>
        </property>
        <property name="encode">
            <value>utf-8</value>
        </property>
    </bean>
</beans>


发送代码:
try {
            systemMailSender.send(subject, content,emailAddress);
        } catch (MessagingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

posted on 2008-01-18 15:25 木剑 阅读(238) 评论(0)  编辑  收藏 所属分类: spring+hibernate