用户邮件激活 通过QQ邮箱发送激活邮件 soringBoot

本文主要介绍了使用java 调用邮箱发送邮件的功能

首先新建一个springboot项目

pom依赖如下

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.7.RELEASE</version><relativePath /> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions><version>1.3.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.11</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.0</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.35</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.5</version></dependency><!-- Jackson Json处理工具包 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.version}</version></dependency><!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.8.1</version></dependency><!--Json array start --><dependency><groupId>commons-beanutils</groupId><artifactId>commons-beanutils</artifactId><version>1.7.0</version></dependency><dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.1</version></dependency><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>2.5</version></dependency><dependency><groupId>net.sf.ezmorph</groupId><artifactId>ezmorph</artifactId><version>1.0.3</version></dependency><dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><version>2.4</version><classifier>jdk15</classifier></dependency><!--Json array end --><dependency><groupId>com.github.penggle</groupId><artifactId>kaptcha</artifactId><version>2.3.2</version></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>

上面除了邮件还有一些别的,为了防止去掉出问题所以我就全粘上了jdk1.8的

首先要想使用代码发邮件需要第一步就是有一个邮箱,这里我用QQ邮箱举例子

先登录

然后进入设置

在之后开启邮箱的操作服务并获取授权码,这个授权码也是我们在下面要用到的,不是邮箱登录密码

接下来正式进入代码,首先就是创建controller类 testController

这里需要解释一下就是激活账其实就是给用户一个字段是否激活,创建的时候这个值为0,激活之后值就是1;不用我多说了吧

@Controller
@RequestMapping("/test")
public class testController {@RequestMapping("/toReg")@ResponseBodypublic Integer toReg(HttpServletRequest request){
                 String itme=request.getPatameter("item");//这里是用户注册时填入的邮箱,也就是目标邮箱//内容是修改用户状态的超链接
//这个地址是修改用户状态的超链接 这里我使用localhost:8080  调用的其实就是下面激活账户的方法
 String content="<a href='http://localhost:8080/test/toTuser?id="+这里写新创建的账户的id+"' >請激活您的賬號</a>";

sendEmail(content); return 0; } /** * 激活账户 * @param request * @return */ @RequestMapping("/toUpUser")
@ResponseBody public Integer toTuser(HttpServletRequest request){int i=0;//这个基本就是一条sql搞定,就是更新id为n的用户让他变为激活状态String id=request.getParameter("id");i+=this.testService.toTuser(id); return i; } public Object sendEmail(String content,String item) { try { //手动写入资源 Properties props = new Properties(); //显示日志props.setProperty("mail.debug", "true");// 需要验证props.setProperty("mail.smtp.auth", "true");// qq邮箱props.setProperty("mail.host", "smtp.qq.com");//这里QQ邮箱是这个 别的比如163的话就把qq换成163//制定SMTP方式发送props.setProperty("mail.transport.protocol", "smtp");//qq邮箱服务器端口号props.setProperty("mail.port", "465");//不同邮箱不同服务号 qq是465 别的自己百度 随便一搜索就有MailSSL SocketFactory sf = new MailSSL SocketFactory();//mail的 socket工厂 sf.setTrustAllHosts(true);//这里貌似是信任所有的发送到邮箱的操作//设置ssl加密 不是所有邮箱都需要props.put("mail.smtp.ssl.enable", "true");props.put("mail.smtp.ssl. socketFactory", sf); //载入资源 Session session = Session.getInstance(props); //创建消息Message msg = new MimeMessage(session);msg.setFrom(new InternetAddress("xxxxxx@qq.com"));//这里是我们用的QQ邮箱//设置主题msg.setSubject("測試");//邮件内容并设置编码msg.setContent(content,"text/html;charset=utf-8");//创建链接Transport transport = session.getTransport();//进行连接transport.connect("smtp.qq.com", "xxxxxxxxxx@qq.com", "这里写我们得到的授权密码 注意不是登录密码"); //设置收件地址并发送transport.sendMessage(msg, new Address[] { new InternetAddress(item) });//这里是目标地址 也就是接收邮件的邮箱 return "sucesss"; } catch (Exception ex) { ex.printStackTrace(); return "error"; } }}从上面其实大家可以看到我这是在邮箱中放入了超链接 其实些什么都行,本文主要是让大家知道怎么用java操纵邮箱发送邮件,所以大家要是不想链接数据库也可以直接调用sendmail方法写死一些数据然后启动试试,这样就可以把需要的邮件发送出去,比较简单没设么技术含量,觉得有用的亲帮点个赞呗

sp
so
so
so
so
so
so
so
so
so
so
so

java实现通过QQ邮箱发送激活邮件 springBoot相关推荐

  1. python向自己qq邮件发信息_python实现自动向QQ邮箱发送天气预报邮件

    今天是清明长假的最后一天了,趁着这点空余的时间想来做点有意思的东西,之前做12306自动购票程序的时候就想加入一个功能,就是抢票成功后实现自动向指定的邮箱里面发送提醒信息的邮件,功能还是很简单的,今天 ...

  2. PHP实现qq邮箱发送自定义邮件

    本文实例讲述了PHP实现发送邮件的方法. 不同类型的邮箱发送邮件的方式也是不同的. 下面我们就先给大家举例介绍qq邮箱开启发送邮件服务的方法. 首先我们登录qq邮箱,打开设置. 然后点击账户 开启PO ...

  3. java发送消息_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  4. java读取qq邮箱_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  5. java给qq发消息_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  6. java 发送激活邮件 以qq邮箱为例

    java发送激活邮件 以qq邮箱为例 1.首先发送者邮箱需要开启服务 登录qq邮箱,选择设置--账号,开启以上两个服务.会获得相应的两个授权码 2.以下代码为发送邮件代码 package com.em ...

  7. JAVA实现QQ邮箱推送邮件

    JAVA实现QQ邮箱推送邮件 文章目录 JAVA实现QQ邮箱推送邮件 准备 一.在项目中引入JavaMail包 二.开始实现 1.我们在Service类里面编写一个方法,这个方法接收两个参数:1收件人 ...

  8. JAVA代码给QQ邮箱发邮件

    通过java代码给qq邮箱发邮件 使用发送邮箱所需要2个jar包 activation.jar    mail.jar 下载链接:https://pan.baidu.com/s/1YA3jgmUNzW ...

  9. java实现发邮件qq邮箱,Java实现利用QQ邮箱发送邮件

    博主在做项目时,要求能够系统能够通过点击按钮来向某一个用户发送邮件. 于是博主使用了开启QQ邮箱的STMP来进行邮件发送,下面是完成步骤: 首先我们需要开启邮箱发送端口:首先我们打开自己的邮箱 就是这 ...

最新文章

  1. ubuntu预装脚本
  2. ios设置中性黑体_ios 解决自定义字体无法显示问题
  3. PS打造油画般的风景人像
  4. 如何使用 Opencv 打开摄像头获取图像信息?
  5. java 爬虫_Java爬虫可以非常溜
  6. 层级 z-index 透明opacity
  7. Java基础 - 游戏项目 - 坦克大战(第一章,入门机制分析与学习规划)
  8. M3DGIS三维电子沙盘大数据人工智能元宇宙地理信息系统第5课
  9. C语言中三目运算符的结合性问题
  10. 策略盈亏分布统计——从零到实盘11
  11. 计算机考研复试之KY122 找出直系亲属(c++)
  12. MySQL学习笔记10:MySQL图形化管理工具 navicat 和 Workbench
  13. 力扣 387. 字符串中的第一个唯一字符 C语言实现
  14. 雅可比矩阵和行列式(Jacobian)
  15. 数据库是什么?数据库的概念
  16. JAVA可以赋值分数吗,信息技术支持下的教学反思超星尔雅网课答案
  17. 【沃顿商学院学习笔记】商业基础——Operation Management:02运营管理活动中的详细流程分析
  18. wsappx把电脑卡爆了解决办法
  19. NAND驱动分析--(二)
  20. TM7707 评估前做的功课

热门文章

  1. 我的世界怎么联机显示服务器,我的世界怎么联机 局域网联机及服务器教程
  2. 2007大盘点之十大史上最牛(不是一般的牛X!)
  3. Java 实现查询数据库下载导出Excel详解
  4. 美容院圣诞节促销活动方案
  5. VUE3 has no exported member ‘toRefs‘
  6. 华为服务器登陆不了系统,服务器的数据库怎么登陆不了怎么办
  7. go windows锁屏 关闭桌面(杀掉文件资源管理器)
  8. Apache ab 测试工具使用(一)
  9. cad 激活出错解决办法
  10. C++类和对象——友元部分