/**
* java发送带附件的邮件
* 周枫
* 2013.8.10
*/
package com.dsideal.Util;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import javax.activation.*;
public class SendMail {
private static String host = "smtp.qq.com";
private static String user = "95834073@qq.com";
private static String pwd = "******";
/**
* <p>功能:</p>
* @author 周枫
* @date 2013-8-10
* @param "发送的邮箱", "接收的邮箱", "这个是收件箱列表标题名称", "发送邮件显示标题", "邮件正文", "附件名称","附件地址+名称"
* @return void
*/
public static void send(String from,String to,String personalName,String subject,String mail_body,String affixName,String affix_url) {
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(props);
MimeMessage message = new MimeMessage(session);
try {
Address address = new InternetAddress(from,personalName);
message.setFrom(address);
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
Multipart multipart = new MimeMultipart();
BodyPart contentPart = new MimeBodyPart();
contentPart.setText(mail_body);
multipart.addBodyPart(contentPart);
BodyPart messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(affix_url);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(MimeUtility.encodeText(affixName));
multipart.addBodyPart(messageBodyPart);
message.setContent(multipart);
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(host, user, pwd);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
SendMail.send("95834073@qq.com", "95834073@qq.com", "列表名称", "html页面标题", "周枫java发送邮件", "附件.txt", "D:"+File.separator+"temp周枫.txt");
System.out.println("邮件成功发送完成!");
}
}