spring javamail使用

spring提供了java mail插件,很方便发送邮件。
1、spring配置文件增加如下配置

<bean id="mimeMessage" class="javax.mail.internet.MimeMessage" factory-bean="javaMailSender"
factory-method="createMimeMessage" />


<bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="邮件服务器地址" />
<property name="username" value="邮箱帐号(不是邮箱名称)" />
<property name="password" value="密码" />
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.timeout">25000</prop>
<!-- <prop key="mail.smtp.port">25</prop>
<prop key="mail.smtp.socketFactory.port">25</prop>
<prop key="mail.smtp.socketFactory.fallback">false</prop>
<prop key="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop>
-->
</props>
</property>
</bean>

<bean id="sendMail" class="com.mindray.protal.common.SendMail">
<property name="mailSender" ref="javaMailSender" />
<property name="mimeMessage" ref="mimeMessage" />
</bean>





java代码



public class SendMail {

private JavaMailSender mailSender;
private MimeMessage mimeMessage;
private static Logger logger = Logger.getLogger(SendMail.class);

public JavaMailSender getMailSender() {
return mailSender;
}

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


public MimeMessage getMimeMessage() {
return mimeMessage;
}


public void setMimeMessage(MimeMessage mimeMessage) {
this.mimeMessage = mimeMessage;
}



/**
* 带附件的HTML格式邮件
* @throws Exception
* @throws MessagingException
* @throws IOException
* @throws IllegalStateException
*/
public void sendAttachMail(MailBean mail) throws Exception {
String failMail = "";
try
{
MimeMessageHelper messageHelper = new MimeMessageHelper(this.mimeMessage, true, "UTF-8");
String mailTos[] = mail.getTo().split(";");
messageHelper.setFrom(mail.getFrom());
messageHelper.setSubject(mail.getTitle());
messageHelper.setText(mail.getContent(), true);
ByteArrayResource ir = new ByteArrayResource(mail.getBytes());
String filename = MimeUtility.encodeWord(mail.getFilename(), "UTF-8", null);
messageHelper.addAttachment(filename, ir);
for(int i=0; i<mailTos.length ;i++)
{
failMail = mailTos[i];
messageHelper.setTo(mailTos[i]);
this.mailSender.send(this.mimeMessage);
logger.info("send mail ok=" + mailTos[i]);
failMail = "";
}
}
catch(Exception e)
{
logger.error(e);
if(!"".equals(failMail))
{
throw new Exception(e);
}
else
{
throw e;
}
}
}


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值