/**
* 使用java mail 发送邮件需要注意:1.jdk版本和java mail版本的兼容;2.activation包需要导入
*/
package cn.zhtech.zhqc.mail;
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/**
* @author Administrator
* @version 2009-3-4
*/
public class MailSendDemo {
/**
* @param args
*/
private String sender;
private String receiver;
private String password;
private String title;
private String content;
public MailSendDemo(){
//sender = "[email protected]";
receiver = "[email protected]";
title = "My first test mail progrem!";
content = "//1.建立邮件会话;2.由邮件会话新建一个消息对象;3.设置邮件;4.发送邮件"+
" 使用java mail 发送邮件需要注意:1.jdk版本和java mail版本的兼容;2.activation包需要导入"
+"注意有些新注册的免费邮箱已经不支持pop3收信了,不过老邮箱还是可以的";
}
/**
* 发送邮件
* @throws MessagingException
*/
public void sendMail() throws MessagingException{
Properties prop = new Properties();
prop.put("mail.smtp.host", "mail.163.com");//存放发送邮件的服务器信息
prop.put("mail.smtp.auth", "true");//同时通过验证
Session s = Session.getInstance(prop);//根据属性新建一个会话
s.setDebug(true);
MimeMessage message = new MimeMessage(s);//由邮件会话新建一个消息对象
InternetAddress from = new InternetAddress("[email protected]");
message.setFrom(from);//设置发件人
InternetAddress to = new InternetAddress(receiver);
message.setRecipient(Message.RecipientType.TO, to);//设置收件人并设置接收类型为TO
message.setSubject(title);//设置邮件的主题
message.setText(content);//设置邮件的内容
message.setSentDate(new Date());//设置邮件的日期
message.saveChanges();//存储信息
Transport trans = s.getTransport("smtp") ;
//以smtp方式登录邮箱,第一个参数是发送邮件用的邮件服务器SMTP地址,第二个参数为用户名,第三个参数为密码
trans.connect("smtp.163.com", "[email protected]", "XXXX");
trans.sendMessage(message, message.getAllRecipients());//发送邮件其中第二个参数是所有准备好的收件人地址
trans.close();
}
/**
* 测试所写的最简单的邮件发送程序是否成功
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
MailSendDemo ms = new MailSendDemo();
try {
ms.sendMail();
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("发送邮件失败");
}
System.out.println("发送邮件成功");
}
}
//1.建立邮件会话;2.由邮件会话新建一个消息对象;3.设置邮件;4.发送邮件