文档章节

Spring开发发送邮件验证激活

xiejunbo
 xiejunbo
发布于 2015/05/01 15:24
字数 437
阅读 62
收藏 2

 Spring开发发送邮件验证激活:

spring.xml

 <!-- 配置SimpleMailMessage发送文本邮件 -->
    <bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage">
    	<property name="from" value="${mail.from}"/>
    </bean>
    
    <!-- 配置JavamailSenderImpl对象 -->
    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    	<property name="defaultEncoding" value="utf-8"/>
		<property name="host" value="${mail.host}"/>
		<property name="username" value="${mail.user}"/>
		<property name="password" value="${mail.pwd}"/>
		<property name="javaMailProperties">  
            <props>  
                <!-- 设置认证开关 -->  
                <prop key="mail.smtp.auth">true</prop>  
                <!-- 启动调试开关 -->  
                <prop key="mail.debug">true</prop>  
            </props>  
        </property>  
    </bean>


EmailController.java

package org.jun.controller.email;

import java.io.File;
import java.util.Date;

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

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * 发送邮件
 * 
 * @author xiejunbo
 *
 */

@Controller
@RequestMapping("email")
public class EmailController {  
    
	@Autowired
	private JavaMailSender mailSender;
	@Autowired
	private SimpleMailMessage simpleMsg;
	
	/**
	 * 带附件和链接的邮件
	 * @throws MessagingException 
	 */
	@ResponseBody
	@RequestMapping("sendMime")
	public String sendMime() throws MessagingException{
		
		MimeMessage msg = mailSender.createMimeMessage();
		MimeMessageHelper helper = new MimeMessageHelper(msg,true);
		helper.setFrom("624664181@qq.com");
		helper.setTo("xiejunbo@xx.con");
		helper.setText("您刚刚在xx科技公司注册了账号,注册邮箱:447546225@qq.com,请点击以面链接进行验证<br><a href='http://localhost:8080/parser/email/checkEmail.do?username=xiejunbo&pwd=123456'><h4>验证链接</h4></a><br>"
				+ "<img src='http://xxxxxxxx/group1/M00/00/1C/oYYBAFS133CAIWJJAAOmte_4nRg167.jpg'>", true);
		helper.setSubject("xx科技公司账号激活验证链接");
		helper.setSentDate(new Date());
		FileSystemResource file = new FileSystemResource(new File("C:\\Users\\Administrator\\Desktop\\jun.jpg"));
		helper.addAttachment("jun.jpg", file);
		
		mailSender.send(msg);
		return  "send successfully";
	}

	/**
	 * 纯文本邮件
	 */
	@ResponseBody
	@RequestMapping("sendText")
	public String sendText() {  
		
		simpleMsg.setText("测试spring发送文本邮件");//邮件内容
        //   msg.setBcc("");//密送人,可以是一个数组
       // msg.setCc("");//抄送人,可以是一个数组
		simpleMsg.setSentDate(new Date());//发送时间
		simpleMsg.setSubject("这是发送主题");
		simpleMsg.setTo("4sdfasdf@qq.com");//接收方,可以是一个数组
        mailSender.send(simpleMsg);
        
        return  "send successfully";
    }  
	
	/**
	 * 邮件激活验证
	 * 
	 * @return
	 */
	@ResponseBody
	@RequestMapping("checkEmail")
	public String checkEmail(@RequestParam String username, @RequestParam String pwd){
		if("xiejunbo".equals(username) && "123456".equals(pwd)){
			System.out.println("账号激活成功!");
			return "Verify account successfully!";	
		}
		System.out.println("账号激活失败!请重新激活!");
		return "Verify account fail! Please try again!";
	}
	
	 
}


mail.properties配置:

#mail sender
mail.host=smtp.qq.com
mail.from=aaaaaa@qq.com
mail.user=aaaaaa@qq.com
mail.pwd=xxxxxxxxxxxxxxx


© 著作权归作者所有

共有 人打赏支持
xiejunbo
粉丝 41
博文 150
码字总数 132363
作品 0
广州
后端工程师
JeeWeb敏捷开发平台/jeeweb

JeeWeb敏捷开发平台 QQ交流群: 570062301 官方网站: https://www.jeeweb.cn 官方论坛: http://bbs.jeeweb.cn 项目演示: https://demo.jeeweb.cn 简介 JeeWeb是一款基于SpringMVC+Spring+...

JeeWeb敏捷开发平台
2017/07/06
0
0
JeeWeb敏捷开发平台/jeeweb-mybatis

JeeWeb敏捷开发平台(Mybatis) QQ交流群: 570062301(满)、522959928 官方网站: https://www.jeeweb.cn 文档地址: https://doc.jeeweb.cn 项目演示: https://mybatis.jeeweb.cn 简介 JeeW...

JeeWeb敏捷开发平台
2017/07/24
0
0
分布式系统 - iBase4J

Spring boot,Spring,SpringMVC,Mybatis,mybatis-plus,motan/dubbo分布式,Redis缓存,Shiro权限管理,Spring-Session单点登录,Quartz分布式集群调度,Restful服务,QQ/微信登录,App t...

iBase4J
2016/05/04
0
74
Java Web 快速开发平台 --JeeWeb

JeeWeb敏捷开发平台 官方网站: https://www.jeeweb.cn 官方论坛: http://bbs.jeeweb.cn 项目演示: https://demo.jeeweb.cn github地址: https://github.com/white-cat/jeeweb Myeclipse非......

JeeWeb
2017/07/06
5.1K
6
Spring中的任务(异步,定时,发邮件)

一 Spring中的异步任务使用: 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的;但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完...

刘信坚
06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Minifilter的动态安装、加载及卸载

MINIFILTER框架的文件系统过滤驱动,无法使用的CreateService和OpenService进行动态加载。 看了一下,使用Inf文件安装Minifilter驱动的方式是在注册表驱动服务项下比传统驱动多创建了Instanc...

simpower
12分钟前
0
0
idea新建springCloud项目(6)- Config Server使用

1.在IDEA新建springCloud项目-Config Server 修改版本,和之前建的eureka项目版本一致,修改完记得刷新: 删除掉不需要的文件: 2.把Config S 服务注册到eureka上去,配置git地址,启动项目 ...

monroeCode
18分钟前
3
0
大数据可视化项目开发总纲

第1章 开发文档总纲 1.1 开发工具清单 名称 版本 备注 Pentaho-bi server pentaho-server-ce-7.1 Pentaho Cde为其内置工具 Pentaho-prd pentaho-prd-ce-7.1 Pentaho Report Designer报表工具...

ZhangLG
18分钟前
1
0
pip安装超时问题

pip3 install --default-timeout=100 tensorflow 设置为100秒 参考: User Guide How to solve ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443) with pip?......

亚林瓜子
20分钟前
0
0
fragment 旋转时保持当前实例

设备旋转时保存Fragment的交互状态: setRetainInstance(true);

zdglf
22分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部