[转载]javaMail Java实现邮件发送
2009-10-13 10:24
656 查看
邮件系统很简单哦,只有下面两个类:
MailBean 和 SendMailOnTime
需要jar组件:
activation.jar
mail.jar
log4j.jar
代码如下:
MailBean 和 SendMailOnTime
需要jar组件:
activation.jar
mail.jar
log4j.jar
代码如下:
import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import org.apache.log4j.Logger; /** * 类功能 : 处理意见反馈邮件发送 调用 jar:activation.jar 、 mail.jar */ public class MailBean { public static Logger log = null ; static { log = Logger.getLogger (MailBean. class ); } // smtpHost 发件人所用到的 smtp 服务器 String smtpHost = "smtp.163.com" ; // from 发件人邮箱 String from = "d-ear@163.com" ; // to 收件人邮箱 String to = "mbrasser@d-ear.com" ; // subject 邮件标题 String subject = "receive a mail from d-ear@163.com" ; // theMessage 邮件内容 StringBuffer theMessage = new StringBuffer(); /** * 固定的给 ffshi@d-ear.com ,stpan@d-ear.com 发送邮件 * * @param smtpHost * @param from * @param subject * @param messageText * @throws MessagingException */ public void sendMessage(String smtpHost, String from, String subject, String messageText) throws MessagingException { SmtpAuth sa = new SmtpAuth(); sa.getuserinfo( "d-ear" , "123abc" ); java.util.Properties props = new java.util.Properties(); props.put( "mail.smtp.auth" , "true" ); props.put( "mail.smtp.host" , smtpHost); System. out .println( "Constructing message- from=" + from + " to=" + to ); InternetAddress fromAddress = new InternetAddress(from); InternetAddress[] toAddresss = new InternetAddress[2]; toAddresss[0] = new InternetAddress( "ffshi@d-ear.com" ); toAddresss[1] = new InternetAddress( "stpan@d-ear.com" ); int i = 0; while (i < toAddresss. length ) { Session mailSession = Session.getDefaultInstance (props, sa); MimeMessage testMessage = new MimeMessage(mailSession); testMessage.setFrom(fromAddress); testMessage.addRecipient(javax.mail.Message.RecipientType. TO , toAddresss[i]); testMessage.setSentDate( new java.util.Date()); testMessage.setSubject(subject); testMessage.setText(messageText); Transport.send (testMessage); System. out .println( "A mail have been sent!" ); i++; } } /* * 由 163 服务器向目的邮箱发送邮件 * 邮件发送处理 @param stmHost,from,to,subject,messageText */ public void sendMessage(String smtpHost, String from, String to, String subject, String messageText) throws MessagingException { SmtpAuth sa = new SmtpAuth(); sa.getuserinfo( "d-ear" , "123abc" ); java.util.Properties props = new java.util.Properties(); props.put( "mail.smtp.auth" , "true" ); props.put( "mail.smtp.host" , smtpHost); System. out .println( "Constructing message- from=" + from + " to=" + to); InternetAddress fromAddress = new InternetAddress(from); InternetAddress toAddresss = new InternetAddress(to); Session mailSession = Session.getDefaultInstance (props, sa); MimeMessage testMessage = new MimeMessage(mailSession); testMessage.setFrom(fromAddress); testMessage.addRecipient(javax.mail.Message.RecipientType. TO , toAddresss); testMessage.setSentDate( new java.util.Date()); testMessage.setSubject(subject); testMessage.setText(messageText); Transport.send (testMessage); System. out .println( "A mail have been sent to " + to); } /** * 功能:群发功能 , 把所有的目的邮箱作为一个数组参数传入 * * @param smtpHost * @param from * @param to 目的邮箱数组 * @param subject * @param messageText * @throws MessagingException */ public void sendMessage(String smtpHost, String from, String[] to, String subject, String messageText) throws MessagingException { SmtpAuth sa = new SmtpAuth(); sa.getuserinfo( "d-ear" , "123abc" ); java.util.Properties props = new java.util.Properties(); props.put( "mail.smtp.auth" , "true" ); props.put( "mail.smtp.host" , smtpHost); System. out .println( "Constructing message- from=" + from + " to=" + to); InternetAddress fromAddress = new InternetAddress(from); InternetAddress[] toAddresss = new InternetAddress[to. length ]; for ( int len=0;len<to. length ;len++){ toAddresss[0] = new InternetAddress(to[len]); } int i = 0; while (i < toAddresss. length ) { Session mailSession = Session.getDefaultInstance (props, sa); MimeMessage testMessage = new MimeMessage(mailSession); testMessage.setFrom(fromAddress); testMessage.addRecipient(javax.mail.Message.RecipientType. TO , toAddresss[i]); testMessage.setSentDate( new java.util.Date()); testMessage.setSubject(subject); testMessage.setText(messageText); Transport.send (testMessage); System. out .println( "A mail have been sent to " +to[i]); i++; } } /* * 邮件用户名和密码认证 */ static class SmtpAuth extends javax.mail.Authenticator { private String user , password ; public void getuserinfo(String getuser, String getpassword) { user = getuser; password = getpassword; } protected javax.mail.PasswordAuthentication getPasswordAuthentication() { return new javax.mail.PasswordAuthentication( user , password ); } } } import javax.mail.MessagingException; import org.apache.log4j.Logger; public class SendMailOnTime { public static Logger log = null ; static { log = Logger.getLogger (SendMailOnTime. class ); } /** * @param args */ public static void sendMail(String str) { MailBean mail = new MailBean(); try { mail.sendMessage( "smtp.163.com" , "d-ear@163.com" , "rent information" , str); } catch (MessagingException e) { System. out .println( "mail send error !" ); log .debug( "mail send error !" + e.getMessage()); e.printStackTrace(); } System. out .println( "Mail have been sended ." ); } /** * 给一个指定邮箱发送指定的邮件内容 * @param str */ public static void sendMail(String toMail, String content) { MailBean mail = new MailBean(); try { mail.sendMessage( "smtp.163.com" , "d-ear@163.com" , toMail, "spider information" , content); } catch (MessagingException e) { System. out .println( "mail send error !" ); log .debug( "mail send error !" + e.getMessage()); e.printStackTrace(); } System. out .println( "Mail have been sended ." ); } /** * 指定目的邮箱数组进行群发 create date:2008- 8- 15 author:Administrator * @param toMail * @param content */ public static void sendMail(String[] toMail, String content) { MailBean mail = new MailBean(); try { mail.sendMessage( "smtp.163.com" , "d-ear@163.com" , toMail, "spider information" , content); } catch (MessagingException e) { System. out .println( "mail send error !" ); log .debug( "mail send error !" + e.getMessage()); e.printStackTrace(); } System. out .println( "Mail have been sended ." ); } } public class TestMail { public static void main(String[] args) { String message = "邮件测试!"; String toMail = "song87615@163.com"; SendMailOnTime.sendMail(toMail, message); } }
相关文章推荐
- javaMail Java实现邮件发送,群发功能,java发送邮件
- javaMail Java实现邮件发送,群发功能,java发送邮件
- Java基于JavaMail实现向QQ邮箱发送邮件
- 用java实现的邮件系统六(javamail发送复杂邮件-带附件和html)
- Java 基于JavaMail实现QQ邮件发送(也可实现群发)
- 用Java类实现JavaMail发送邮件的例子-Java基础-Java-编程开发
- JAVA邮件发送的简单实现,使用javamail通过smtp协议发信
- 用Java类实现JavaMail发送邮件的例子
- java中javamail发送带附件的邮件实现方法
- JavaWeb中使用JavaMail实现发送邮件功能实例详解
- 基于JavaMail的Java实现复杂邮件发送功能
- Java 基于JavaMail实现向QQ邮箱发送邮件(未测试)
- Java-使用JavaMail发送一封邮件给用户邮箱功能实现
- Java基于JavaMail实现向QQ邮箱发送邮件
- JAVA中实现利用JAVAMail来发送邮件
- JavaMail实现发送邮件,可添加附件(JAVA SWING)
- 用java实现的邮件系统四 (javamail发送邮件)
- java邮件发送的简单实现,使用javamail通过smtp协议发信
- Java基于JavaMail实现向QQ邮箱发送邮件