文档章节

java EE 5配置邮件发送 qq企业邮箱

无知的小孩
 无知的小孩
发布于 2016/01/02 12:29
字数 423
阅读 100
收藏 7

java EE 5配置QQ企业邮件发送

1.在项目的WebRoot/META-INF/新建context.xml 具体内容如下:
<Context>
    <Resource name="mail/Session"
    auth="Container"
    type="javax.mail.Session"
    mail.smtp.host="localhost"
    mail.smtp.auth="true"
    mail.transport.protocol="smtp" />
</Context>

2.讲javamail-1.4下的mail.jar拷贝到Tomcat/lib下
3.实例代码如下:

try {
    Context initCtx = new InitialContext();
    Context envCtx = (Context)initCtx.lookup("java:comp/env");
    Session session = (Session)envCtx.lookup("mail/Session");
    
    Message message = new MimeMessage(session);
    message.setFrom(new InternetAddress(usname)); //发件人账号
    InternetAddress[] to = new InternetAddress[1];
    to[0] = new InternetAddress(email);
    message.setRecipients(Message.RecipientType.TO, to);
    message.setSubject("邮件主题"); //邮件主题
    message.setText("邮件正文 Lol你值得拥有"); //邮件正文文本
    
    Transport transport = session.getTransport();
    transport.connect("smtp.exmail.qq.com",usname,uspwd); //发件的smtp  发件人账号  发件人密码
    transport.sendMessage(message,to);
    transport.close();
} catch (AddressException e) {
    e.printStackTrace();
} catch (NamingException e) {
    e.printStackTrace();
} catch (MessagingException e) {
    e.printStackTrace();
}

=================================================

java EE 5配置QQ邮件发送

1.在项目的WebRoot/META-INF/新建context.xml 具体内容如下:
<Context>
    <Resource name="mail/Session"
    auth="Container"
    type="javax.mail.Session"
    mail.smtp.host="localhost"
    mail.smtp.auth="true"
    mail.transport.protocol="smtp"
    mail.smtp.ssl.enable="true"
    mail.smtp.socketFactory.class="javax.net.ssl.SSLSocketFactory"
    mail.smtp.socketFactory.fallback="false"
    mail.smtp.port="465"
    mail.smtp.socketFactory.port="465" />
</Context>

2.讲javamail-1.4下的mail.jar拷贝到Tomcat/lib下
3.实例代码如下:

String femail = "发件人邮箱地址";
String fpwd = "授权码";
String[] toEmail = new String[]{femail};
String subject = "注册验证";
String text = "欢迎您注册,您的验证码是1234";
String smtp = "smtp.qq.com";
try {
    
    Context initCtx = new InitialContext();
    Context envCtx = (Context)initCtx.lookup("java:comp/env");
    Session session = (Session)envCtx.lookup("mail/Session");
    session.setDebug(true);
    URLName urlName = new URLName("");
    session.setPasswordAuthentication(urlName, new PasswordAuthentication(femail, fpwd));
    
    Message message = new MimeMessage(session);
    message.setFrom(new InternetAddress(femail)); //发件人邮箱
    InternetAddress[] to = new InternetAddress[toEmail.length];
    for(int i=0;i<toEmail.length;i++)
    {
        to[i] = new InternetAddress(toEmail[i]); //收件人邮箱
    }
    message.setRecipients(Message.RecipientType.TO, to);
    message.setSubject(subject);
    message.setText(text);
    
    Transport transport = session.getTransport();
    transport.connect(smtp,465,femail,fpwd); //发件账号密码 465:SSL端口
    transport.sendMessage(message,to);
    transport.close();
} catch (AddressException e) {
    e.printStackTrace();
} catch (NamingException e) {
    e.printStackTrace();
} catch (MessagingException e) {
    e.printStackTrace();
}

© 著作权归作者所有

共有 人打赏支持
无知的小孩
粉丝 2
博文 69
码字总数 18932
作品 0
贵阳
后端工程师
私信 提问
手把手教你搭建Jenkins+Jmeter+Ant自动化集成环境

一、安装前准备 1.JDK:jdk-8u121-windows-x64 2.jmeter工具:apache-jmeter-2.13 3.ANT工具:apache-ant-1.9.7-bin 4.jenkins工具:jenkins-2.32.2 以上安装包工具及版本下载地址:pan.baidu...

keitwotest
2017/09/15
0
0
Java 发送qq邮件基础和封装

前文摘自 菜鸟教程 :http://www.runoob.com/java/java-sending-email.html 使用Java应用程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 JavaMail API 和Java Activation Frame...

fantj666
03/18
0
0
Jenkins 教程(一)实现自动化打包及邮件通知

个人不喜欢装腔作势一堆专业术语放上去,让大多数人看不懂来提升逼格(所谓的专家),所以我简单的介绍jenkins是干啥的。本文使用jenkins,就是让它把git仓库里的东西取出来,然后在jenkins容器...

FantJ
05/26
0
0
Spring Cloud 2.x系列之springboot发送邮件

虽然现在短信验证已经最流行也是最常用的验证方式;但是邮件验证还是必不可少,依然是网站的必备功能之一。什么注册验证,忘记密码或者是给用户发送营销信息都是可以使用邮件发送功能的。最早...

技术小能手
10/22
0
0
java基础实现邮件发送(以qq和网易为例)

java基础实现邮件发送(以qq和网易为例) 当你浏览一些网站的时候,更多的时候都是需要我们登陆、注册的;而注册激活账号一般有两种形式,一是电话验证码激活,二是邮箱激活;第一种是人名币...

NYDarren
05/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Kubernetes里的secret最基本的用法

Secret解决了密码、token、密钥等敏感数据的配置问题,使用Secret可以避免把这些敏感数据以明文的形式暴露到镜像或者Pod Spec中。 Secret可以以Volume或者环境变量的方式使用。 使用如下命令...

JerryWang_SAP
昨天
1
0
可重入锁和非可重入锁

广义上的可重入锁指的是可重复可递归调用的锁,在外层使用锁之后,在内层仍然可以使用,并且不发生死锁(前提得是同一个对象或者class),这样的锁就叫做可重入锁。 可重入锁: ReentrantLoc...

狼王黄师傅
昨天
1
0
2018-11-20学习笔记

1. python数据类型: 给变量赋值什么样的值,变量就是什么样的类型 给变量赋值整数,变量就是整数类型 给变量赋值字符串,变量就是字符串类型 123 和“123”一样吗? 在python中 单引号 与双...

laoba
昨天
1
0
使用 React 和 Vue 创建相同的应用,他们有什么差异?

在工作中应用 Vue 之后,我对它有了相当深刻的理解。 不过,俗话说「外国的月亮比较圆」,我好奇「外国的」 React 是怎么样的。 我阅读了 React 文档并观看了一些教程视频,虽然它们很棒,但...

阿K1225
昨天
2
0
2天闭门培训|以太坊智能合约从入门到实战(北京)

2天培训 16个课时 探寻技术原理,精通以太坊智能合约开发 以太坊智能合约是现在应用的最广泛的区块链应用开发方式,HiBlock区块链社区针对以太坊智能合约的学习特别推出2天闭门研修班,通过2...

HiBlock
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部