java实现发送邮件

时间:2022-08-21 20:48:08

前言:先引入javamail用到的jar包,

自己下载http://fhed.v061.10000net.cn/gulili198509051s/newjspkongjian/ueditor/jsp/upload/20130429/96951367193619671.rar

package mail;

import java.util.Properties;

import javax.mail.Address;

import javax.mail.Authenticator;

import javax.mail.Message;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

public class sendmail {

public static void main(String[] args) throws Exception {

// 创建邮件的发送过程中用到的主机和端口号的属性文件

Properties pro = new Properties();

// 设置邮件发送方的主机地址如果是qq邮箱,则为smtp.qq.com

pro.put("mail.smtp.host", "smtp.163.com");

// 设置发送邮件端口号

pro.put("mail.smtp.port", "25");

// 设置邮件发送需要认证

pro.put("mail.smtp.auth", "true");

// 创建邮件验证信息,即发送邮件的用户名和密码

Authenticator authenticator = new Authenticator() {

@Override

protected PasswordAuthentication getPasswordAuthentication() {

// 重写验证方法,填写用户名,密码

return new PasswordAuthentication("邮箱", "密码");

}

};

// 根据邮件会话 构建一个邮件的session

Session sendMailSession = Session.getDefaultInstance(pro, authenticator);

// 创建一个邮件消息

Message message = new MimeMessage(sendMailSession);

// 创建邮件发送者地址

Address sourceAddress = new InternetAddress("邮箱");

// 将原地址设置到消息的信息中

message.setFrom(sourceAddress);

// 创建邮件的接收者地址

Address destAddress = new InternetAddress("邮箱");

// 将接收者的地址设置到消息的信息中

message.setRecipient(Message.RecipientType.TO, destAddress);

// 设置邮件的主题

message.setSubject("找回密码");

// 设置邮件的发送内容

message.setText("www.baidu.com");

// 可以设置邮件的发送时间(就是对方看邮件发送的时间)

// String sendDate = "2014-7-31 17:55:00";

// Date date = new

// SimpleDateFormat("yyyy-MM-dd hh:mm:ss")。parse(sendDate);

// message.setSentDate(date);

// 发送邮件

Transport.send(message);

}

}