1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > SSM 框架整合 spring 发送邮件功能实现!

SSM 框架整合 spring 发送邮件功能实现!

时间:2024-06-22 23:49:42

相关推荐

SSM 框架整合 spring 发送邮件功能实现!

基于SSM的 spring 发送邮件的实现

由于考虑到项目中需要,如果程序出现异常或其它问题,可以发送邮件来及时提醒后台维护人员处>理。所以目前考虑使用JavaMail来实现邮件发送!如下,是我整理的一些内容,做个笔记记录下:(当然,在这功能实现之前,需要搭建好ssm的基本框架!)

1.导入jar包。首先我们需要在我们spring项目中添加以下两个jar包(我是使用的maven所以直接配置依赖信息)

<!--添加spring支持email 依赖--><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>4.3.19.RELEASE</version></dependency><!--邮件发送--><dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.6.1</version></dependency>

2.配置邮件服务器等信息。

先在邮箱中设置开启smtp和pop3服务然后拿到授权码(需要保存下来,配置到代码中):我这里使用的是QQ邮箱,如下:

mail.properties文件(邮件相关的配置):

#服务器主机名 mail.smtp.host=mail.smtp.username=xxx@#密码/客户端授权码mail.smtp.password=这里填入第二步中生成的授权码#编码字符mail.smtp.defaultEncoding=utf-8#是否进行用户名密码校验mail.smtp.auth=true#设置超时时间mail.smtp.timeout=20000

3.配置spring-dao.xml,在配置文件中导入properties文件的属性(根据自己项目实际情况来配置,mail.properties的扫描):

<!--读取属性文件--><context:property-placeholder location="classpath:*.properties"/>

然后注入一个邮件发送的bean接口,并且初始化配置相关属性(我单独编写一个spring-mail.xml文件来配置,可以直接配置在spring-mvc.xml文件中):

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd"><!--配置邮件接口--><bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"><property name="host" value="${mail.smtp.host}"/><property name="username" value="${mail.smtp.username}"/><property name="password" value="${mail.smtp.password}"/><property name="defaultEncoding" value="${mail.smtp.defaultEncoding}"/><property name="javaMailProperties"><props><prop key="mail.smtp.auth">${mail.smtp.auth}</prop><prop key="mail.smtp.timeout">${mail.smtp.timeout}</prop></props></property></bean></beans>

所有配置都完成了

4.编写一个测试类来测试一下:

package com.mzj.study.controller;import com.mzj.study.utils.JsonData;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Value;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMailSender;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;/*** Author: 小莫* Date: -11-12 18:10* Description:<描述>*/@RestController@RequestMapping("/email")public class SenEmailController {@Autowiredprivate JavaMailSender javaMailSender;@Value("${mail.smtp.username}")private String emailFrom;@Value("${mail.smtp.tousername}")private String toEmail;@RequestMapping("send")public Object senMsg(){SimpleMailMessage message = new SimpleMailMessage();//发件人的邮箱地址message.setFrom(emailFrom);//收件人的邮箱地址message.setTo(toEmail);//邮件主题message.setSubject("spring email test!!!!");//邮件内容message.setText("收到的邮件内容:spring email test !!!");//发送邮件javaMailSender.send(message);return JsonData.success("success",message);}}

5.测试结果。如图:

访问接口运行程序

查看邮箱的收到的邮件信息

则表明功能实现!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。