Javamail简单使用案例
邮件开发环境搭建
邮件服务器
易邮邮件服务器
- 配置如下


邮件客户端
- Foxmail
- 配置如下

- 配置如下
使用Javamail发送邮件
- 下载
- javamail-samples.zip
- javax.mail.jar

官网地址http://www.oracle.com/technetwork/java/javamail/index.html
- 使用javamail
发送到本地的邮件中
package org.xueyao.email;
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class MailUtils {
/**
* 发送邮件
* @param to 接收邮件的地址
* @param subject 邮件主题
* @param msgText 邮件内容
*/
public static void send(String to, String subject, String msgText) {
//发邮件的地址
String from = "admin@flowstone.com";
//邮件发送服务器地址
String host = "localhost";
//是否开启debug模式
boolean debug = true;
// 设置发送邮件的配置信息
Properties props = new Properties();
props.put("mail.smtp.host", host);
if (debug) {
props.put("mail.debug", debug);
}
//邮件会话
Session session = Session.getInstance(props, null);
session.setDebug(debug);
try {
//创建邮件
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = { new InternetAddress(to) };
msg.setRecipients(Message.RecipientType.TO, address);
//设置主题
msg.setSubject(subject);
//设置发送时间
msg.setSentDate(new Date());
// If the desired charset is known, you can use
// setText(text, charset)
//设置邮件的内容
msg.setText(msgText);
//发送邮件
Transport.send(msg);
} catch (Exception mex) {
mex.printStackTrace();
}
}
public static void main(String[] args) {
String to = "test02@flowstone.com";
String subject = "如何学习?";
String msgText = "解决学习困扰,就是天天晚上熬夜学习";
MailUtils.send(to, subject, msgText);
}
}
- 效果图

通过QQ邮箱发送
package org.xueyao.email;
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class MailQQUtils {
/**
* 发送邮件
* @param to 接收邮件的地址
* @param subject 邮件主题
* @param msgText 邮件内容
*/
public static void send(String to, String subject, String msgText) {
//发邮件的地址
String from = "931330220@qq.com";
String password = "授权码";
//邮件发送服务器地址
String host = "smtp.qq.com";
//是否开启debug模式
boolean debug = true;
// 设置发送邮件的配置信息
Properties props = new Properties();
props.put("mail.smtp.host", host);
if (debug) {
props.put("mail.debug", debug);
}
//添加auth认证
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "587");
//邮件会话
Session session = Session.getInstance(props, null);
session.setDebug(debug);
try {
//创建邮件
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = { new InternetAddress(to) };
msg.setRecipients(Message.RecipientType.TO, address);
//设置主题
msg.setSubject(subject);
//设置发送时间
msg.setSentDate(new Date());
//设置邮件的内容
msg.setText(msgText);
//发送邮件
Transport.send(msg,from,password);
} catch (Exception mex) {
mex.printStackTrace();
}
}
public static void main(String[] args) {
String to = "收件邮箱";
String subject = "如何学习?";
String msgText = "解决学习困扰,就是天天晚上熬夜学习";
MailQQUtils.send(to, subject, msgText);
}
}
效果图

Javamail简单使用案例的更多相关文章
- [Java] JavaMail 简单案例
网易提供了免费的 SMTP / POP3服务,可用于编程测试,详情见 什么是POP3.SMTP和IMAP? 只需要拥有一个网易邮箱账号,并开启该账号的 SMTP / POP3 功能,便可以通过程序发送 ...
- 简单登录案例(SharedPreferences存储账户信息)&联网请求图片并下载到SD卡(文件外部存储)
新人刚学习Android两周,写一个随笔算是对两周学习成果的巩固,不足之处欢迎各位建议和完善. 这次写的是一个简单登录案例,大概功能如下: 注册的账户信息用SharedPreferences存储: 登 ...
- MyBatis学习总结(一)简单入门案例
MyBatis学习总结(一)简单入门案例 主要内容:本文主要通过对数据库中的use表进行增删改查总结mybatis的环境搭建和基本入门使用 一.需要的jar包: 1.核心包 2.依赖包 3.jdbc数 ...
- 一个简单的案例带你入门Dubbo分布式框架
相信有很多小伙伴都知道,dubbo是一个分布式.高性能.透明化的RPC服务框架,提供服务自动注册.自动发现等高效服务治理方案,dubbo的中文文档也是非常全的,中文文档可以参考这里dubbo.io.由 ...
- solr简单搜索案例
solr简单搜索案例 使用Solr实现电商网站中商品信息搜索功能,可以根据关键字搜索商品信息,根据商品分类.价格过滤搜索结果,也可以根据价格进行排序,实现分页. 架构分为: 1. solr服务器 2. ...
- springcloud+eureka简单入门案例
springcloud+eureka简单入门案例 一.服务提供者 直接提供服务,入门案例没有特别要设置的地方,注意下端口,由于要启动多个服务,可能会冲突 配置文件(src/main/resources ...
- Python 简单爬虫案例
Python 简单爬虫案例 import requests url = "https://www.sogou.com/web" # 封装参数 wd = input('enter a ...
- arduino中SCoop库的简单应用案例
转载:https://www.csdn.net/gather_27/MtTaggzsMDExMS1ibG9n.html arduino中SCoop库的简单应用案例首先这篇文章来在视频https://v ...
- ReentrantReadWriteLock读写锁简单原理案例证明
ReentrantReadWriteLock存在原因? 我们知道List的实现类ArrayList,LinkedList都是非线程安全的,Vector类通过用synchronized修饰方法保证了Li ...
随机推荐
- poscms用法总结(非定制开发,不涉及后台代码)
这些天几个企业站仿下来,对poscms的用法多少有些了解了,在这个记录一下,好记性不如烂笔头嘛. 1.静态文件目录和模板文件目录 这两个目录分别放置css/js/image等静态文件和html模板文件 ...
- Java 使用 long 出现空指针异常
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Helvetica Neue'; color: #454545} p.p2 {margin: ...
- Happening in delphi world
Happy New Year! Delphi XE5 Update 2 Recent VCL enhancements New product features for old product use ...
- Creating a Game with CocosBuilder
Creating a Game with CocosBuilder This tutorial aims to show how you can use CocosBuilder together w ...
- 让ListView中的控件失去焦点:android:descendantFocusability="blocksDescendants"
值得注意的是,ListView中的控件不能设置clickable="true",否则会无视父控件的blockDescendants. 可参考: https://segmentfau ...
- 使用iptables nat进行端口转发
1.将发向HostA:PortA的请求转发到HostB:PortB iptables -t nat -A PREROUTING -p tcp -i eth0 -d HostA --dport Port ...
- eclipse导出文件上传服务器
[1]导出 选择项目 文件导出 输入导出路径如f盘ftp文件夹下 [2]利用scr上传服务器工具 上传到 home/tomcat/app/项目名称/ 不导入upload文件 [待完善]
- asp.net core microservices 架构之eureka服务发现
一 简介 微服务将需多的功能拆分为许多的轻量级的子应用,这些子应用相互调度.好处就是轻量级,完全符合了敏捷开发的精神.我们知道ut(单元测试),不仅仅提高我们的程序的健壮性,而且可以强制将类和方法的设 ...
- python函数返回值
2016-08-09 15:01:38 python函数返回值使用return语句,可以返回任意类型的数.如果return语句执行,它之后的所有语句都不再执行. def func(x,y): pri ...
- CODEVS4650 破损的键盘
传送门 题目大意:一个字符串,将[]内的字符提前. 题解:链表,数组元素高效交换 cur表示目前元素插入下标为cur的元素后面. 所以,假设目前把下标为i的元素插到cur后面. 那么,next[i]= ...