java邮件收发_Java实现邮件收发

一. 准备工作

1. 传输协议

SMTP协议-->发送邮件:

我们通常把处理用户smtp请求(邮件发送请求)的服务器称之为SMTP服务器(邮件发送服务器)

POP3协议-->接收邮件:

我们通常把处理用户pop3请求(邮件接收请求)的服务器称之为POP3服务器(邮件接收服务器)

2. 邮件收发原理

effa4ac53b4ed683f1eee8a520b036c3.png

闪电侠网易云邮箱通过smtp协议连接到Smtp服务器,然后发送一封邮件给网易的邮件服务器

网易分析发现需要去QQ的邮件服务器,通过smtp协议将邮件转投给QQ的Smtp服务器

QQ将接收到的邮件存储在 962113063@qq.com这个邮件账号的空间中

闪电侠qq邮箱通过Pop3协议连接到Pop3服务器收取邮件

从 962113063@qq.com这个邮件账号的空间中取出邮件

Pop3服务器将取出来的邮件送到闪电侠qq邮箱中

3. QQ邮箱中获取对应的权限

QQ邮箱需要安全验证,我们需要获取他对应的权限;

QQ邮箱-->邮箱设置-->账户

558d1ad93ee7a0bb3e5ffcc6d2742cce.png

141b0383eec3e05e33ac3c7653600457.png

4. 导入jar包

mail.jar

activation.ja

二. Java发送纯文本邮件

编写测试代码

public class SendMain{

public static void main(String[] args) throws GeneralSecurityException, MessagingException{

Properties prop = new Properties();

//设置QQ邮件服务器

prop.setProperty("mail.host", "smtp.qq.com");

//邮件发送协议

prop.setProperty("mail.transport.protocol", "smtp");

//需要验证用户名密码

prop.setProperty("mail.smtp.auth", "true");

//关于QQ邮箱,还要设置SSL加密,加上以下代码即可

MailSSLSocketFactory sf = new MailSSLSocketFactory();

sf.setTrustAllHosts(true);

prop.put("mail.smtp.ssl.enable", "true");

prop.put("mail.smtp.ssl.socketFactory", sf);

//使用JavaMail发送邮件的5个步骤

//1.txt、创建定义整个应用程序所需的环境信息的Session对象

Session session = Session.getDefaultInstance(prop, new Authenticator() {

public PasswordAuthentication getPasswordAuthentication() {

//发件人邮件用户名、授权码

return new PasswordAuthentication("962113063@qq.com",

"授权码");

}

});

//开启Session的d

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值