首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

javax.mail java 发送邮件的兑现

2012-11-23 
javax.mailjava 发送邮件的实现下面有完整可以运行的代码。本人亲自测试,可以运行。附件有所用到的jar包和源

javax.mail java 发送邮件的实现
下面有完整可以运行的代码。本人亲自测试,可以运行。附件有所用到的jar包和源码。需要的朋友可以直接下载进行测试和研究,本人也是在网上找到的代码。一起分享下
直接上源码
1. 邮件的基本信息(方便就直接设置为静态了)
下面最好是做为一个javabean

package com.lgf.Email;import java.util.Properties;import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.Address;import javax.mail.Authenticator;import javax.mail.BodyPart;import javax.mail.Message;import javax.mail.Multipart;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 com.lgf.SendEmail.MailAuthenticator;public class SendEmail {/**  * 发送普通邮件  * @throws Exception  */   public void doSendNormalMail() {   // 获取系统环境  Properties prop = new Properties();  Authenticator auth = null;//判断发送邮件是否需要验证if (EmailMessage.validate) {// 邮件服务器认证   用户名和密码auth =new MailAuthenticator();  }//添加必要的信息prop.put("mail.smtp.host", EmailMessage.Email_Host);   prop.put("mail.smtp.auth", "true");   // 设置对话和邮件服务器进行通讯Session session = Session.getDefaultInstance(prop, auth);   //在控制台显示Debug信息session.setDebug(true);//设置邮件对象Message message = new MimeMessage(session);   try {   // 设置邮件主题 message.setSubject(EmailMessage.Email_Subject);   // 设置邮件标题   message.setHeader("Header", EmailMessage.Email_Header); //  设置发送时间   message.setSentDate(EmailMessage.sendDate);// 设置发信人地址  和 名字Address address = new InternetAddress(EmailMessage.FROM, EmailMessage.FROM_NAME);   //把发件人信息添加到信息中message.setFrom(address);   //设置发件人地址Address toAddress = new InternetAddress(EmailMessage.TO); // 设置接收人地址message.setRecipient(Message.RecipientType.TO, toAddress);     // 设置多个收件人地址   // message.addRecipient(Message.RecipientType.TO,new InternetAddress("xxx@xxx.com"));   // 设置邮件格式message.setContent("Content", EmailMessage.Email_Content); // 设置邮件内容    必须在设置文件格式后面message.setText(EmailMessage.Email_Body); //保存上面添加的信息message.saveChanges();   // 发送邮件 System.out.println("sendNormalEmail() 开始发送邮件……");   Transport.send(message);   System.out.println("发送成功!");   } catch (Exception e){   System.out.println("出错");   e.printStackTrace();   }   }   /** * 发送HTML格式的邮件 */public void doSendHtmlMail() {   // 获取系统环境  Properties prop = new Properties();  Authenticator auth = null;if (EmailMessage.validate){// 邮件服务器认证   用户名和密码auth = new MailAuthenticator();}//添加必要的信息prop.put("mail.smtp.host", EmailMessage.Email_Host);   prop.put("mail.smtp.auth", "true");   // 设置对话和邮件服务器进行通讯Session session = Session.getDefaultInstance(prop, auth);   //设置邮件对象Message message = new MimeMessage(session);   try {   // 设置邮件主题 message.setSubject(EmailMessage.Email_Subject);   // 设置邮件标题   message.setHeader("Header", EmailMessage.Email_Header); //  设置发送时间   message.setSentDate(EmailMessage.sendDate);// 设置发信人地址  和 名字Address address = new InternetAddress(EmailMessage.FROM, EmailMessage.FROM_NAME);   //把发件人信息添加到信息中message.setFrom(address);   //设置发件人地址Address toAddress = new InternetAddress(EmailMessage.TO); // 设置接收人地址message.setRecipient(Message.RecipientType.TO, toAddress);     // 设置多个收件人地址   // message.addRecipient(Message.RecipientType.TO,new InternetAddress("xxx@xxx.com"));   //设置发送信息的内容   下面为发送hmml//设置邮件格式EmailMessage.Email_Content = "text/html; charset=utf-8";message.setContent(EmailMessage.Email_Body, EmailMessage.Email_Content); //保存上面添加的信息message.saveChanges();   // 发送邮件 System.out.println("doSendHtmlMail() 开始发送邮件……");   Transport.send(message);   System.out.println("发送成功!");   } catch (Exception e){   System.out.println("出错");   e.printStackTrace();   }   }   /** * 发送带有附件格式的邮件 */public void doSendAttachmentMail() {   // 获取系统环境  Properties prop = new Properties();  Authenticator auth = null;if (EmailMessage.validate){// 邮件服务器认证   用户名和密码auth = new MailAuthenticator();}//添加必要的信息prop.put("mail.smtp.host", EmailMessage.Email_Host);   prop.put("mail.smtp.auth", "true");   // 设置对话和邮件服务器进行通讯Session session = Session.getDefaultInstance(prop, auth);   //设置邮件对象Message message = new MimeMessage(session);   try {   // 设置邮件主题 message.setSubject(EmailMessage.Email_Subject);   // 设置邮件标题   message.setHeader("Header", EmailMessage.Email_Header); //  设置发送时间   message.setSentDate(EmailMessage.sendDate);// 设置发信人地址  和 名字Address address = new InternetAddress(EmailMessage.FROM, EmailMessage.FROM_NAME);   //把发件人信息添加到信息中message.setFrom(address);   //设置发件人地址Address toAddress = new InternetAddress(EmailMessage.TO); // 设置接收人地址message.setRecipient(Message.RecipientType.TO, toAddress);     // 设置多个收件人地址   // message.addRecipient(Message.RecipientType.TO,new InternetAddress("xxx@xxx.com"));     //设置发送信息的内容   下面为发送附件message.setContent(EmailMessage.Email_Body, EmailMessage.Email_Content); BodyPart messageBodyPart = new MimeBodyPart();   messageBodyPart.setText("bodypart");   Multipart multipart = new MimeMultipart();   multipart.addBodyPart(messageBodyPart);   messageBodyPart = new MimeBodyPart();   //设置上传的资源DataSource source = new FileDataSource("E:\\3.doc");  //添加到messageBodyPart.setDataHandler(new DataHandler(source));   //设置文件名称,记得后缀名messageBodyPart.setFileName("test.doc");   multipart.addBodyPart(messageBodyPart);  message.setContent(multipart);   //保存上面添加的信息message.saveChanges();   // 发送邮件 System.out.println("doSendAttachmentMail() 开始发送邮件……");   Transport.send(message);   System.out.println("发送成功!");   } catch (Exception e){   System.out.println("出错");   e.printStackTrace();   }   }   /** * @param args */public static void main(String[] args){//new SendEmail().doSendNormalMail();//new SendEmail().doSendHtmlMail();new SendEmail().doSendAttachmentMail();}}


运行前必须把邮件的基本信息xxx都改为你自己有的邮件
下面附上源码,和jar包。

热点排行
Bad Request.