邮件开发环境搭建

邮件服务器

  • 易邮邮件服务器

    • 配置如下

邮件客户端

  • Foxmail

    • 配置如下

使用Javamail发送邮件

  1. 下载
  • javamail-samples.zip
  • javax.mail.jar

官网地址http://www.oracle.com/technetwork/java/javamail/index.html

  1. 使用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); } }
  1. 效果图

通过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简单使用案例的更多相关文章

  1. [Java] JavaMail 简单案例

    网易提供了免费的 SMTP / POP3服务,可用于编程测试,详情见 什么是POP3.SMTP和IMAP? 只需要拥有一个网易邮箱账号,并开启该账号的 SMTP / POP3 功能,便可以通过程序发送 ...

  2. 简单登录案例(SharedPreferences存储账户信息)&联网请求图片并下载到SD卡(文件外部存储)

    新人刚学习Android两周,写一个随笔算是对两周学习成果的巩固,不足之处欢迎各位建议和完善. 这次写的是一个简单登录案例,大概功能如下: 注册的账户信息用SharedPreferences存储: 登 ...

  3. MyBatis学习总结(一)简单入门案例

    MyBatis学习总结(一)简单入门案例 主要内容:本文主要通过对数据库中的use表进行增删改查总结mybatis的环境搭建和基本入门使用 一.需要的jar包: 1.核心包 2.依赖包 3.jdbc数 ...

  4. 一个简单的案例带你入门Dubbo分布式框架

    相信有很多小伙伴都知道,dubbo是一个分布式.高性能.透明化的RPC服务框架,提供服务自动注册.自动发现等高效服务治理方案,dubbo的中文文档也是非常全的,中文文档可以参考这里dubbo.io.由 ...

  5. solr简单搜索案例

    solr简单搜索案例 使用Solr实现电商网站中商品信息搜索功能,可以根据关键字搜索商品信息,根据商品分类.价格过滤搜索结果,也可以根据价格进行排序,实现分页. 架构分为: 1. solr服务器 2. ...

  6. springcloud+eureka简单入门案例

    springcloud+eureka简单入门案例 一.服务提供者 直接提供服务,入门案例没有特别要设置的地方,注意下端口,由于要启动多个服务,可能会冲突 配置文件(src/main/resources ...

  7. Python 简单爬虫案例

    Python 简单爬虫案例 import requests url = "https://www.sogou.com/web" # 封装参数 wd = input('enter a ...

  8. arduino中SCoop库的简单应用案例

    转载:https://www.csdn.net/gather_27/MtTaggzsMDExMS1ibG9n.html arduino中SCoop库的简单应用案例首先这篇文章来在视频https://v ...

  9. ReentrantReadWriteLock读写锁简单原理案例证明

    ReentrantReadWriteLock存在原因? 我们知道List的实现类ArrayList,LinkedList都是非线程安全的,Vector类通过用synchronized修饰方法保证了Li ...

随机推荐

  1. nginx 转发 由于php语法错误 导致的 50x

    server {        listen 8008;        root /root/php-test;        index index.php index.html index.htm ...

  2. ACM ICPC 2018 青岛赛区 部分金牌题题解(K,L,I,G)

     目录: K Airdrop I Soldier Game L Sub-cycle Graph G Repair the Artwork ———————————————————— ps:楼主脑残有点严 ...

  3. Redis常见面试题总结

    Redis面试题总结(1) 2018年02月28日 17:42:21 LSX丨笔头先生 阅读数:3568更多 个人分类: 面试题总结   (1)什么是redis? Redis 是一个基于内存的高性能k ...

  4. linux离线搭建Python环境及安装numpy、pandas

    1.安装python2.7.3 Cent OS 6.5默认装的有python2.6.6,需要重新安装python2.7.3下载地址:https://www.python.org/downloads/s ...

  5. jquery选择器 之 获取父级元素,子元素,同级元素

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link href ...

  6. 一个工程实例来学习 Makefile

    March 3, 2015 8:19 PM Makefile 文件的编写 学习前的准备 需要准备的工程目录结构如下: . ├── add │   ├── add_float.c │   ├── add ...

  7. Python reload() 函数

    reload(module) 作用: 用于重新载入之前载入的模块. module -- 模块对象.返回模块对象. 实例:  重新载入 sys 模块,并设置默认编码为 utf8 >>> ...

  8. php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错,该怎么解决

    php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错,Class.forName("com.mysql.jdbc.Driver&q ...

  9. Codeforces Round #320 (Div. 1) [Bayan Thanks-Round] B. "Or" Game

    题目链接:http://codeforces.com/contest/578/problem/B 题目大意:现在有n个数,你可以对其进行k此操作,每次操作可以选择其中的任意一个数对其进行乘以x的操作. ...

  10. FPGA简单概述

    中国FPGA市场及人才需求 如今毕业生的就业问题十分严峻,特别是计算机专业的毕业生.通过对FPGA目前发展情况的分析和市场岗位的调查,结合高职高专生在FPGA岗位的定位,制定相应的教学计划,使高职高专 ...