email java_email - javaYanglei - 博客园

Email 邮件发送

0、导入 依赖

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.zhiyou100

email

1.0-SNAPSHOT

src/main/java

**/*.properties

**/*.xml

false

src/main/resources

**/*.properties

**/*.xml

false

UTF-8

1.8

4.1.2.RELEASE

8.0.20

3.17

2.11.0

org.springframework

spring-context

org.springframework

spring-orm

org.springframework

spring-oxm

org.springframework

spring-jdbc

org.springframework

spring-tx

org.springframework

spring-web

org.springframework

spring-webmvc

org.springframework

spring-aop

org.springframework

spring-test

org.projectlombok

lombok

1.16.20

provided

c3p0

c3p0

0.9.1.2

cn.hutool

hutool-all

4.5.15

com.alibaba

fastjson

1.2.68

mysql

mysql-connector-java

${mysql.version}

dom4j

dom4j

1.6.1

javax.servlet

javax.servlet-api

3.1.0

provided

javax.servlet.jsp

jsp-api

2.1

provided

javax.servlet

jstl

1.2

javax.ws.rs

javax.ws.rs-api

2.0

javax.websocket

javax.websocket-api

1.0

javax.annotation

javax.annotation-api

1.2

javax.transaction

javax.transaction-api

1.2

cglib

cglib

2.2.2

org.mybatis

mybatis

3.4.5

org.mybatis

mybatis-spring

2.0.2

com.github.pagehelper

pagehelper

5.1.10

junit

junit

4.12

test

commons-io

commons-io

2.2

commons-fileupload

commons-fileupload

1.3.1

org.apache.poi

poi-ooxml

${poi.version}

xerces

xercesImpl

${xerces.version}

xml-apis

xml-apis

1.4.01

com.oracle

ojdbc6

11.2.0.3.0

javax.mail

javax.mail-api

1.6.2

com.sun.mail

javax.mail

1.6.2

org.springframework

spring-framework-bom

${spring.version}

pom

import

一、注册一个 网易 162 邮箱

注册成功

3e40c330510f173832a04647ec241121.png

二、开启第三方授权,

点击 设置 -> POP3/SMTP/IMAP 设置

fafdafadfasSQIVHs.png

点击 开启

注意需要发送短信,会有一个授权码,记一下

7d648e61fac1699b0813b86a3b2ff206.png

三、创建程序,发送邮件

标准端口25,也可以使用加密端口465或587

Test01SendMail.java

package com.zhiyou100.email;

import com.sun.xml.internal.xsom.impl.parser.SubstGroupBaseTypeRef;

import lombok.SneakyThrows;

import org.springframework.web.bind.ServletRequestDataBinder;

import javax.mail.*;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import java.util.Date;

import java.util.Properties;

/**

* 发送邮件

*

* @author yang

* @version 1.0.0

* @date 2020-09-16 10:28

*/

public class Test01SendMail {

/**

* 邮箱名字

*/

public static final String MY_EMAIL_ACCOUNT = "javayanglei2001@126.com";

/**

* 授权码

*/

public static final String MY_EMAIL_PASSWORD = "OAJFKDISCBDVRGJE";

/**

* SMTP服务器: smtp.126.com

*/

public static final String EMAIL_163_SMTP_HOST = "smtp.126.com";

/**

* 端口号

* QQ邮箱:SMTP服务器是 smtp.qq.com,端口是465/587;

* 163邮箱:SMTP服务器是 smtp.163.com,端口是 25;

* Gmail邮箱:SMTP服务器是 smtp.gmail.com,端口是465/587。

*/

public static final String EMAIL_163_SMTP_PORT = "25";

@SneakyThrows

public static void main(String[] args) {

// 收件人

String receiver = "yanglei20011123@163.com";

// 标题

String subject = "你好,我是小号";

// 内容

String content = "

发送成功!!!

";

sendMessage(receiver,subject,content);

}

public static void sendMessage(String receiver,String subject,String content)throws Exception {

//属性集

Properties p = new Properties();

p.setProperty("mail.smtp.host", EMAIL_163_SMTP_HOST);

p.setProperty("mail.smtp.port", EMAIL_163_SMTP_PORT);

p.setProperty("mail.smtp.socketFactory.port", EMAIL_163_SMTP_PORT);

//是否需要认证

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

p.setProperty("mail.smtp.socketFactory.class", "SSL_FACTORY");

//获取连接

Session session = Session.getInstance(p, new Authenticator() {

// 设置认证账户信息

@Override

protected PasswordAuthentication getPasswordAuthentication() {

return new PasswordAuthentication(MY_EMAIL_ACCOUNT, MY_EMAIL_PASSWORD);

}

});

//设置debug测试

session.setDebug(true);

System.out.println("创建邮件");

MimeMessage message = new MimeMessage(session);

// 发件人

message.setFrom(new InternetAddress(MY_EMAIL_ACCOUNT));

// 收件人和抄送人

message.setRecipients(Message.RecipientType.TO, receiver);

// 内容(这个内容还不能乱写,有可能会被SMTP拒绝掉;多试几次吧)

message.setSubject(subject);

message.setContent(content, "text/html;charset=UTF-8");

message.setSentDate(new Date());

message.saveChanges();//保存设置

System.out.println("准备发送");

Transport.send(message);

System.out.println("发送成功!");

}

}

发送成功!

c958af6c808bfcfeb3851135b2fcec1d.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值