基于JavaMail的Java邮件发送
邮件绑定功能
【需求】
- 1、 用户注册时,输入邮箱
- 2、 通过Javamail技术,向用户邮箱发送一封祝贺邮件
1、javamail发送邮件
1.1、简介
什么是javamail?
1.2、工具类
首先从哪个邮箱发出邮件,所以得发送邮件账号支持 程序发送邮件
第一步:配置网易 开启客户端授权码
(1)授权码申请:
选中POP3/SMTP服务和IMAP/SMTP服务,点击开启,如果已开启,会显示关闭
授权码就是JAVA代码登录邮箱的密码:MQKFLKEKMUHOKVPS
第二步:在mail-demo01项目中,配置pom.xml 添加javamail的坐标。
<!-- 导入javamail的坐标 --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>
第三步:根据需要,编辑发送邮件正文
步骤:
- 1 设置邮件发送的属性
- 2 设置主机地址
- 3 设置是否打开验证
- 4 创建链接
- 5 创建邮件
- 6 设置发送者
- 7 设置接受者
- 8 设置标题
- 9 设置正文
- 10 坐火箭
import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMessage.RecipientType; import java.util.Properties; public class MailUtil { public static String smtp_host = "smtp.163.com"; // 网易 public static String username = "222@163.com"; // 邮箱 public static String password = "q7w8e9a4s5d6"; // 授权码(登录邮箱-->设置-->邮箱安全设置-->客户端授权密码),这里不是邮箱的密码,切记! public static String from = "222@163.com"; // 来源邮箱,使用当前账号 public static void sendMail(String to, String subject, String text) throws Exception { // 1 准备发送邮件需要的参数 Properties props = new Properties(); // 设置主机地址 smtp.qq.com smtp.126.com smtp.163.com props.put("mail.smtp.host", smtp_host); // 是否打开验证:只能设置true,必须打开 props.put("mail.smtp.auth", true); // 2 连接邮件服务器 Session session = Session.getDefaultInstance(props); // 3 创建邮件信息 MimeMessage message = new MimeMessage(session); // 4 设置发送者 InternetAddress fromAddress = new InternetAddress(from); message.setFrom(fromAddress); // 5 设置接收者 InternetAddress toAddress = new InternetAddress(to); // to:直接接收者 cc:抄送 bcc暗送 message.setRecipient(RecipientType.TO, toAddress); // 6 设置主题 message.setSubject(subject); // 7 设置正文 message.setText(text); // 设置HTML方式发送 //message.setContent(text, "text/html;charset=utf-8"); // 8 发送:坐火箭 Transport transport = session.getTransport("smtp");// 参数不能少,表示的是发送协议 // 登录邮箱,此处的密码是授权码 transport.connect(username, password); transport.sendMessage(message, message.getAllRecipients()); transport.close(); System.out.println("ok"); } public static void main(String[] args) { try { MailUtil.sendMail("333@qq.com", "激活测试", "test"); } catch (Exception e) { e.printStackTrace(); } } }
1.3、工具类测试
使用main方法进行测试。
public static void main(String[] args) { try { MailUtil.sendMail("333@qq.com", "激活测试", "test"); } catch (Exception e) { e.printStackTrace(); } }
2、客户注册时,发送祝贺邮件
到此这篇关于基于JavaMail的Java邮件发送的文章就介绍到这了,更多相关Java Mail内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java POI导出Excel时合并单元格没有边框的问题解决
这篇文章主要给大家介绍了关于Java POI导出Excel时合并单元格没有边框的问题解决办法,文中通过代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友可以参考下2023-07-07深入讲解spring boot中servlet的启动过程与原理
这篇文章主要给大家介绍了关于spring boot中servlet启动过程与原理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2018-07-07详解基于java的Socket聊天程序——初始设计(附demo)
本篇文章主要介绍了Socket聊天程序——初始设计(附demo),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-12-12
最新评论