热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaEmail邮箱

packageservice;importcom.sun.mail.util.MailSSLSocketFactory;importjavax.mail.Message;impor

package service;

import com.sun.mail.util.MailSSLSocketFactory;
import javax.mail.Message;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

import java.util.Properties;
public class EmailBox {

//根据需要输入参数,我这里用到两个
public String mail(String a , String b) {

// JDK9以上或JDK6以下使用mail.jar包不加JAF的activation.jar包会抛出该错误!JDK6以上不需要加该jar包;
String email = a;
String num = b;
//随机数拼成验证码
// for (int i &#61; 0; i <6; i&#43;&#43;) {
// int n &#61; (int) (Math.random() * 10);
// num &#61; num &#43; Integer.toString(n);
// }
Properties prop &#61; new Properties();
开启debug调试&#xff0c;以便在控制台查看
// prop.setProperty("mail.debug", "true");
// 设置邮件服务器主机名&#xff0c;这里用QQ邮箱
prop.setProperty("mail.host", "smtp.qq.com");
// 发送服务器需要身份验证
prop.setProperty("mail.smtp.auth", "true");
// 发送邮件协议名称
prop.setProperty("mail.transport.protocol", "smtp");

try {
// 开启SSL加密&#xff0c;否则会失败
MailSSLSocketFactory sf &#61; new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
prop.put("mail.smtp.ssl.enable", "true");
prop.put("mail.smtp.ssl.socketFactory", sf);
// 创建session
Session session &#61; Session.getInstance(prop);
// 通过session得到transport对象
Transport ts &#61; session.getTransport();
// 连接邮件服务器&#xff1a;邮箱类型&#xff0c;帐号&#xff0c;授权码代替密码&#xff08;更安全&#xff09;
ts.connect("smtp.qq.com", "这里填写QQ帐号", "这里填写QQ安全登陆码");//后面的字符是授权码&#xff0c;用qq密码反正我是失败了&#xff08;用自己的&#xff0c;别用我的&#xff0c;这个号是我瞎编的&#xff0c;为了。。。。&#xff09;
// 创建邮件
MimeMessage message &#61; createSimpleMail(session, email, num);
// 发送邮件
ts.sendMessage(message, message.getAllRecipients());
ts.close();
return "发送成功&#xff01;";
} catch (Exception e) {
e.printStackTrace();
return "发送失败&#xff01;";
}
}

public static MimeMessage createSimpleMail(Session session, String email, String num)
throws Exception {
// 创建邮件对象
MimeMessage message &#61; new MimeMessage(session);
// 指明邮件的发件人
message.setFrom(new InternetAddress("这里填写我的QQ邮箱&#xff0c;例如xxxxxxxxx&#64;qq.com"));
// 指明邮件的收件人&#xff0c;现在发件人和收件人是一样的&#xff0c;那就是自己给自己发
message.setRecipient(Message.RecipientType.TO, new InternetAddress("这里填写你要发送的邮箱&#xff0c;如xxxxxxx&#64;qq.com"));
// 邮件的标题
message.setSubject("这里填写要发送的邮件标题");
// 邮件的文本内容
message.setContent("这里填写要发送的邮件内容" , "text/html;charset&#61;UTF-8");
// 返回创建好的邮件对象
return message;
}
}

转:https://www.cnblogs.com/c2g5201314/p/10502126.html



推荐阅读
  • 本文探讨了在使用JavaMail发送电子邮件时,抄送功能未能正常工作的问题,并提供了详细的代码示例和解决方法。 ... [详细]
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • 如何在U8系统中连接服务器并获取数据
    本文介绍了如何在U8系统中通过不同的方法连接服务器并获取数据,包括使用MySQL客户端连接实例的方法,如非SSL连接和SSL连接,并提供了详细的步骤和注意事项。 ... [详细]
  • 本文详细介绍了Android系统的四层架构,包括应用程序层、应用框架层、库与Android运行时层以及Linux内核层,并提供了如何关闭Android系统的步骤。 ... [详细]
  • 在Java开发中,保护代码安全是一个重要的课题。由于Java字节码容易被反编译,因此使用代码混淆工具如ProGuard变得尤为重要。本文将详细介绍如何使用ProGuard进行代码混淆,以及其基本原理和常见问题。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 本文详细介绍了Oracle 11g中的创建表空间的方法,以及如何设置客户端和服务端的基本配置,包括用户管理、环境变量配置等。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本文深入探讨了Go语言中的接口型函数,通过实例分析其灵活性和强大功能,帮助开发者更好地理解和运用这一特性。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文介绍了如何在两个Oracle数据库(假设为数据库A和数据库B)之间设置DBLink,以便能够从数据库A中直接访问和操作数据库B中的数据。文章详细描述了创建DBLink前的必要准备步骤以及具体的创建方法。 ... [详细]
  • 本文将在前几篇关于Android测试理论知识的基础上,通过ApiDemoTest实例详细探讨如何使用ApplicationTestCase进行Android应用测试。建议读者先阅读Android测试教程系列中的相关内容,以便更好地理解本文的实践部分。 ... [详细]
  • 本文介绍了一个使用Spring框架和Quartz调度器实现每周定时调用Web服务获取数据的小项目。通过详细配置Spring XML文件,展示了如何设置定时任务以及解决可能遇到的自动注入问题。 ... [详细]
author-avatar
孤独游侠1976_127
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有