邮箱目前只测试过可以发送qq邮箱,手机验证码我们采用容联云通讯

java发送邮箱

1、加入pom依赖

<dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4.7</version>
</dependency>
<dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1.1</version>
</dependency>

2、QQ邮箱–>邮箱设置–>账户–>POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 开启POP3/SMTP服务,然后获取16位授权码

3、Java实现纯文本邮件发送

import com.sun.mail.util.MailSSLSocketFactory;import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.security.GeneralSecurityException;
import java.util.Properties;public class SSMBIZ {// 发送邮箱验证码public void youx()throws MessagingException, GeneralSecurityException{//创建一个配置文件并保存Properties properties = new Properties();properties.setProperty("mail.host","smtp.qq.com");properties.setProperty("mail.transport.protocol","smtp");properties.setProperty("mail.smtp.auth","true");//QQ存在一个特性设置SSL加密MailSSLSocketFactory sf = new MailSSLSocketFactory();sf.setTrustAllHosts(true);properties.put("mail.smtp.ssl.enable", "true");properties.put("mail.smtp.ssl.socketFactory", sf);//创建一个session对象Session session = Session.getDefaultInstance(properties, new Authenticator() {@Overrideprotected PasswordAuthentication getPasswordAuthentication() {//发件人邮件用户名、授权码return new PasswordAuthentication("123456@qq.com","16位授权码");}});//开启debug模式session.setDebug(true);//获取连接对象Transport transport = session.getTransport();//连接服务器,发件人邮件用户名、授权码transport.connect("smtp.qq.com","123456@qq.com","16位授权码");//创建邮件对象MimeMessage mimeMessage = new MimeMessage(session);//邮件发送人mimeMessage.setFrom(new InternetAddress("1235456@qq.com"));//邮件接收人mimeMessage.setRecipient(Message.RecipientType.TO,new InternetAddress("654321@qq.com"));//邮件标题mimeMessage.setSubject("java测试发送邮箱");//邮件内容mimeMessage.setContent("这是我写的java发送邮箱代码测试","text/html;charset=UTF-8");//发送邮件transport.sendMessage(mimeMessage,mimeMessage.getAllRecipients());//关闭连接transport.close();}
}

百度搜索容联云通讯,注册账号,点击左侧号码管理–>测试号码,输入你要发送的手机号码,例如:现在要给123456789这个手机号发送短信,你就在测试号码里输入这个,每个账号可以拥有三个测试号码

java发送手机短信验证码

1、加入pom依赖

<dependency><groupId>com.cloopen</groupId><artifactId>java-sms-sdk</artifactId><version>1.0.3</version>
</dependency>

2、加入java代码


import com.cloopen.rest.sdk.BodyType;
import com.cloopen.rest.sdk.CCPRestSmsSDK;import java.util.HashMap;
import java.util.Set;public class SSMBIZ {// 手机号发送验证码public void SDK(){//生产环境请求地址:app.cloopen.comString serverIp = "app.cloopen.com";//请求端口String serverPort = "8883";//主账号,登陆云通讯网站后,可在控制台首页看到开发者主账号ACCOUNT SID和主账号令牌AUTH TOKENString accountSId = "accountSId";String accountToken = "accountToken";//请使用管理控制台中已创建应用的APPIDString appId = "appId";CCPRestSmsSDK sdk = new CCPRestSmsSDK();sdk.init(serverIp, serverPort);sdk.setAccount(accountSId, accountToken);sdk.setAppId(appId);sdk.setBodyType(BodyType.Type_JSON);String to = "手机号";// 手机号String templateId= "1";// 短信模仿默认为1String[] datas = {"1234"};// 验证码String subAppend="1234";  //可选 扩展码,四位数字 0~9999String reqId="fadfafas";  //可选 第三方自定义消息id,最大支持32位英文数字,同账号下同一自然天内不允许重复HashMap<String, Object> result = sdk.sendTemplateSMS(to,templateId,datas);//HashMap<String, Object> result = sdk.sendTemplateSMS(to,templateId,datas,subAppend,reqId);if("000000".equals(result.get("statusCode"))){//正常返回输出data包体信息(map)HashMap<String,Object> data = (HashMap<String, Object>) result.get("data");Set<String> keySet = data.keySet();for(String key:keySet){Object object = data.get(key);System.out.println(key +" = "+object);}}else{//异常返回输出错误码和错误信息System.out.println("错误码=" + result.get("statusCode") +" 错误信息= "+result.get("statusMsg"));}}
}

java实现发送短信和邮箱相关推荐

  1. java限制发送短信次数_使用java发送短信验证码码,出现流量限制怎么办?急急急...

    注册登录后需要企业认证,直接在某度上找一张清晰有红章的企业营业执照,注意要细心点,要看看有没有水印.我第一次就没注意上传了一张有水印的营业执照,从此这个账号再也没有审核通过了,后面只能换个账号.都是后 ...

  2. java 指令发送短信_Java短信发送机的实现

    今天早上回来就产生了一个想法,不如用j2me实现一个短信发送机的程序,然后只需要填入几个数字就可以实现短信的自动发送等. 经过大概2个小时的奋斗,终于写好了,并且在多部不同品牌的机器运行良好,而且很实 ...

  3. java实现发送短信验证码、短信验证码防刷校验-49

    一:认证服务环境搭建 1.新建gulimail-auth-server 2.整合相关依赖 <!--引入commom依赖--><dependency><groupId> ...

  4. Java实现发送短信的例子 - 使用【SMS短信平台】

    转自: https://blog.csdn.net/qq_26641781/article/details/78134241 我这里用到的是中国网建提供的SMS短信平台,在实现发送短信之前,需要在SM ...

  5. Android之调取本地通讯录、发送短信、邮箱、微信发送

    前言:在我们开发中会遇到一些信息发送开发需求,我们那时就会用到我们要选择我们要发送的客户对象.选择发送的方式如短信.邮箱.微信等等方式来进行信息的发送. 如下str为要发送的内容,account 为我 ...

  6. java 实现发送短信验证码

    java 发送短信验证码: package com.isoftstone.anze.convenient.utils;import java.io.BufferedReader; import jav ...

  7. Java实现发送短信验证验证码功能

    这几天老大让我弄一个发送短信验证码的功能,使用的是信易通的短信平台接口,然后在Java中使用HttpClient模拟POST请求或者GET请求(看短信平台要求,一般的情况下都是POST请求),调用短信 ...

  8. java redis 发送短信验证码

    public class Randomutil { private Randomutil() { } // 获取6位随机验证码 public static String getRandom() { S ...

  9. java开发——发送短信功能

    使用中国网建提供的SMS短信平台(申请账号地址:http://sms.webchinese.cn/default.shtml) UTF-8编码发送接口地址: http://utf8.api.smsch ...

  10. java 实现发送短信验证码(网易云)

    链接:https://pan.baidu.com/s/1saRmzciNQWpFxHJRN0ISTg 密码:siyt 实现发送验证码的工程下载 1.我们打开这个工程,查看其中的代码 package c ...

最新文章

  1. 阿里重金投数梦工场 布局PaaS动了谁的奶酪
  2. BeautifulSoup的初使用!
  3. SAP质量管理模块常见问题及解决方案
  4. java命令模式返回值_JAVA 设计模式 命令模式
  5. 深度剖析Kubernetes API Server三部曲 - part 3
  6. 第一次作业+105032014142
  7. STC单片机免冷启/自动下载原理DIY免冷启烧录器(纯硬件版和软件版)
  8. 【题解】P2854 [USACO06DEC]牛的过山车Cow Roller Coaster
  9. po层和vo层中po和vo是什么意思
  10. PIX飞控中POS数据读取方法(实用工具)
  11. PostgreSQL数据库日常学习笔记13-约束
  12. magicbook屏幕_荣誉Magicbook 15降压笔记本电脑的最佳爆炸现在
  13. flowable-6.7(一)从工作流与BPMN到flowable
  14. java 临时文件目录_在Java中使用临时文件/文件夹
  15. python图像分析_python数字图像处理(一)图像的常见操作
  16. tf24: GANs—生成明星脸
  17. 华为鸿蒙系统2021年上市,2021年,华为开始规划自有操作系统“鸿蒙”。
  18. Games101 作业6 提高内容(SAH算法)
  19. 等保三级安全要求简要攻略-安全物理环境
  20. macOS实现视频转音频以及音频拼接

热门文章

  1. 写在2019年来临前的倒数0.5小时
  2. 【python 淘宝爬虫】淘宝信誉分抓取
  3. 随机数生成器Random类
  4. 目标检测数据集:直升机(1)
  5. paoding 中文分词学习
  6. i9 9900es版,QQC0满载功耗测试
  7. TortoiseSVN是什么
  8. 迅投QMT量化交易系统介绍
  9. Centos Piranha安装过程
  10. 废旧光盘手工小制作_废旧物手工制作:光盘小制作