您的位置:首页 > 编程语言 > Java开发

SendEmail javaEmail发送邮件

2012-09-13 15:39 429 查看
package com.org;

import java.util.Date;

import java.util.Properties;

import javax.activation.DataHandler;

import javax.activation.FileDataSource;

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.MimeBodyPart;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;

import javax.mail.internet.MimeUtility;

public class SendEmail {

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

//创建一个连接属性。

Properties props = new Properties(); //

props.put( "mail.smtp.host ", "smtp.126.com "); //设置smtp的服务器地址是smtp.126.com

props.put("mail.smtp.auth", "true"); //设置smtp服务器要身份验证。

props.put("mail.transport.protocol", "stmp");

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

protected PasswordAuthentication getPasswordAuthentication(){

return new PasswordAuthentication("taozhida123","123456");

}

});

Message message = new MimeMessage(session);

InternetAddress from = new InternetAddress("taoda121123@126.com"); //发送人地址

from.setPersonal(MimeUtility.encodeText("taoda23")); //发件人名

message.setFrom(from);

//InternetAddress to = new InternetAddress("taozhida11@sina.cn"); //收件人地址



//创建邮件体:

message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("517252186@qq.com"));//抄送给多个人的邮箱

// message.setRecipient(Message.RecipientType.TO, to); // 只有抄送给自己的邮箱

message.setSubject(MimeUtility.encodeText("你好哈,邮件发送成功了")); //邮件标题

message.setSentDate(new Date());

MimeMultipart msgMultipart = new MimeMultipart("mixed");// 指定为混合关系

message.setContent(msgMultipart);

//邮件内容

MimeBodyPart htmlPart = new MimeBodyPart();

htmlPart.setContent(

"<body>"

+ "<div style='position: absolute; left: 390px; top: 150px;height: "

+ "100px;width: 200px;' align='center'>"

+ "<font color='red'>这是测试邮件,请勿回复</font>" + "</div></body>",

"text/html;charset=UTF-8");

// TODO 组装的顺序非常重要,一定要先组装文本域,再组装文件

msgMultipart.addBodyPart(htmlPart);

// 组装附件

MimeBodyPart file = new MimeBodyPart();

FileDataSource file_datasource = new FileDataSource("D:\\Log4JDemo06.rar");

DataHandler dh = new DataHandler(file_datasource);

file.setDataHandler(dh);

// 附件区别内嵌内容的一个特点是有文件名,为防止中文乱码要编码

file.setFileName(MimeUtility.encodeText(dh.getName()));

msgMultipart.addBodyPart(file);

message.saveChanges();



//发送邮件的过程:

Transport transport = session.getTransport("smtp"); //创建连接

transport.connect("smtp.126.com", 25, "taoda123", "319453"); //连接服务器 服务名,端口,发送邮件用户名 (不要@后面),密码

transport.sendMessage(message, message.getAllRecipients()); //发送信息

transport.close(); //关闭

System.out.println("发送完毕");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: