JAVA发送邮件Demo(含附件)

来源:互联网 发布:错生网络剧演员表 编辑:程序博客网 时间:2024/05/22 13:42
package cn.itcast.javamail2;import java.io.File;import java.util.Date;import java.util.Properties;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.Message.RecipientType;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;/** * JAVA Send Email Demo * @className: Demo1 * @author frank * @date 2016-12-13 */public class Demo1 {public static void main(String[] args) throws Exception {// TODO Auto-generated method stubProperties props = new Properties();// 连接的邮件服务器的主机名props.setProperty("mail.smtp.host", "smtp.263.net");// 是否向邮件服务器提交认证props.setProperty("mail.smtp.auth", "true");// 发送邮件的协议props.setProperty("mail.transport.protocol", "smtp");// 创建session// 获取session,创建认证器,指定用户名和密码Session session = Session.getInstance(props, new Authenticator() {@Overrideprotected PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication("邮箱", "密码");}});Message msg = new MimeMessage(session);// msg.setFrom(new InternetAddress("ws_post@163.com"));String from = "frankwu@jdunited.com";String to = "748958740@qq.com";String subject = "今天下午会议纪要!";String body = "<h4>HTML 今天下午大家一起去ktv唱歌!!!</h4> " + "<div>Frankwu</div>";// 设置发件人地址msg.setFrom(new InternetAddress(from));// 设置收件人地址msg.addRecipient(RecipientType.TO, new InternetAddress(to));// 设置抄送,类型为抄送msg.addRecipient(RecipientType.CC, new InternetAddress("邮箱"));// 设置抄送,类型为密送msg.addRecipient(RecipientType.BCC, new InternetAddress("邮箱"));// 设置 E-mail 主题msg.setSubject(subject);// 设置发送时间msg.setSentDate(new Date());// 设置 E-mail 正文部分msg.setText(body);// 可以装载多个主体部件!可以把它当成是一个集合MimeMultipart partList = new MimeMultipart();msg.setContent(partList);// 把邮件的内容设置为多部件的集合对象// 创建一个部件MimeBodyPart part1 = new MimeBodyPart();part1.setContent(body, "text/html;charset=utf-8");// 部件添加到集合中partList.addBodyPart(part1);// 又创建一个部件MimeBodyPart part2 = new MimeBodyPart();// 为部件指定附件part2.attachFile(new File("c:/美女.jpg"));// 指定附件文件的名字// 使用MimeUtility.encodeText()对中文进行编码part2.setFileName(MimeUtility.encodeText("大美女.jpg"));partList.addBodyPart(part2);// 又创建一个部件MimeBodyPart part3 = new MimeBodyPart();// 为部件指定附件part3.attachFile(new File("c:/2016-出口明细表-11.xls"));// 指定附件文件的名字// 使用MimeUtility.encodeText()对中文进行编码part3.setFileName(MimeUtility.encodeText("2016-出口明细表-11.xls"));partList.addBodyPart(part3);// 发送邮件Transport.send(msg);}}

0 1