邮箱发送
-1.导包(坐标)
<!-- 导入javamail的坐标 javax--> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>
-2.公共工具配置
package com.czxy.bos.util; import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Properties; public class MailUtil { public static void sendMail(String to,String subject,String text) throws Exception{ //1 创建属性对象 Properties props = new Properties(); //2 设置邮件服务器的地址 smtp.163.com smtp.126.com smtp.qq.com smtp.gmail.com props.put("mail.smtp.host","smtp.163.com"); //3 设置是否打开校验 , 是否验证用户名和密码 必须要设置为 true props.put("mail.smtp.auth",true); //4 获取与邮件服务器的连接 Session session = Session.getDefaultInstance(props); //5 新建一封邮件 MimeMessage message = new MimeMessage(session); //6 设置发送者 InternetAddress fromAddress = new InternetAddress("sqczdx@163.com"); message.setFrom(fromAddress); //7 设置接收者 InternetAddress toAddress = new InternetAddress(to); // to 接收者 cc 抄送 bcc 密送 message.setRecipient(Message.RecipientType.TO,toAddress); //8 设置主题 message.setSubject(subject); //9 设置正文 // message.setText(text); //第一个参数:内容 //第二个参数:内容格式 message.setContent(text,"text/html;charset=utf-8"); //10 坐火箭 Transport transport = session.getTransport("smtp");//参数必须添加 transport.connect("sqczdx@163.com","q7w8e9a4s5d6");// 密码是授权码 // 所有的接收者 to cc bcc transport.sendMessage(message,message.getAllRecipients()); // 关闭连接 transport.close(); System.out.println("ok"); } public static void main(String[] args) { try { MailUtil.sendMail("1638064027@qq.com","好好学习","天天向上"); } catch (Exception e) { e.printStackTrace(); } } }
3.使用
// 拼接链接地址 String activeUrl = Constants.FORE_MANAGEMENT_HOST + "/regist/activeMail?telephone="+customer.getTelephone()+"&activeCode="+activeCode; String content = "<a href='"+activeUrl+"'>速运快递账号激活</a>"; // 发送邮件 try { MailUtil.sendMail(customer.getEmail(),"世纪佳缘网账号激活",content); } catch (Exception e) { e.printStackTrace(); }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
[阿里大鱼] 发短信!
1.导包 <!-- 引入阿里大鱼的jar包 --> <dependency> <groupId>com.aliyuncs</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>3.3.1</version> </dependency> <dependency> <groupId>com.aliyuncs.dysmsapi</groupId> <artifactId>aliyun-java-sdk-dysmsapi</artifactId> <version>1.0.0</version> </dependency> 2.配置Utils 公共类 package com.czxy.bos.util; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs....
- 下一篇
常见Serialize技术探秘(ObjectXXStream、XML、JSON、JDBC byte编码、Protobuf)
目前业界有各种各样的网络输出传输时的序列化和反序列化方案,它们在技术上的实现的初衷和背景有较大的区别,因此在设计的架构也会有很大的区别,最终在落地后的:解析速度、对系统的影响、传输数据的大小、可维护性及可阅读性等方面有着较大的区别,本文分享一些我在一些常见序列化技术的分析和理解: 文章分成3个部分: 1、列举常见的序列化和反序列化方案(ObjectXXStream、XML、JSON) 2、MySQL JDBC结果集的处理方案 3、Google Protocol Buffer处理方案 【一、常见的在API及消息通信调的用中Serialize方案】: 方案1、基于Java原生的ObjectOutputStream.write()和ObjectInputStream.read()来进行对象序列化和反序列化。 方案2、基于JSON进行序列化和反序列化
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境