- 浏览: 32433 次
- 性别:
- 来自: 湖南
文章分类
最新评论
1、MimeMessage的包装类
public class SimpleMessageWraper { private Session session; private MimeMessage mimeMessage; private Multipart multipart = new MimeMultipart();; public Session getSession() { return session; } public MimeMessage getMimeMessage() { return mimeMessage; } private String arrayToString(String[] array){ String s = ""; if(array != null && array.length > 0){ for(int i=0;i<array.length;i++){ if(s == ""){ s = array[i].trim(); }else{ s += "," + array[i].trim(); } } } return s; } public SimpleMessageWraper(Properties props){ session = Session.getInstance(props); session.setDebug(false); mimeMessage = new MimeMessage(session); } public void setFrom(String from)throws MessagingException{ mimeMessage.setFrom(new InternetAddress(from)); mimeMessage.saveChanges(); } public void setTo(String[] toArray)throws MessagingException{ String s = arrayToString(toArray); Address[] addresses = InternetAddress.parse(s); mimeMessage.setRecipients(Message.RecipientType.TO, addresses); mimeMessage.saveChanges(); } public void setCc(String[] ccArray)throws MessagingException{ String s = arrayToString(ccArray); Address[] addresses = InternetAddress.parse(s); mimeMessage.setRecipients(Message.RecipientType.CC, addresses); mimeMessage.saveChanges(); } public void setSubject(String subject)throws MessagingException{ mimeMessage.setSubject(subject); mimeMessage.saveChanges(); } public void setSentDate(Date date)throws MessagingException{ mimeMessage.setSentDate(date); mimeMessage.saveChanges(); } public void setText(String text)throws MessagingException{ MimeBodyPart mimeBodyPart = new MimeBodyPart(); mimeBodyPart.setText(text); multipart.addBodyPart(mimeBodyPart); mimeMessage.setContent(multipart); mimeMessage.saveChanges(); } public void addAttactment(File file)throws MessagingException,UnsupportedEncodingException{ if(file == null) return; MimeBodyPart mimeBodyPart = new MimeBodyPart(); mimeBodyPart.setFileName(MimeUtility.encodeText(file.getName(), "GBK", "B")); //对邮件头采用base64方式编码 mimeBodyPart.setDataHandler(new DataHandler(new FileDataSource(file))); multipart.addBodyPart(mimeBodyPart); mimeMessage.setContent(multipart); mimeMessage.saveChanges(); } }
2、发送邮件的工具类
public class SimpleMailFactory { private static SimpleMailConfig simpleMailConfig = null; private static Properties props = null; static{ //取得包含邮件配置信息的bean对象 simpleMailConfig = (SimpleMailConfig)SpringContextUtil.getBean(Constants.simpleMailConfigBeanName); props = new Properties(); props.put("mail.smtp.host", simpleMailConfig.getHost()); props.put("mail.smtp.auth", simpleMailConfig.getAuth()); } /** * 功能:取得邮件消息对象的包装器 */ public static SimpleMessageWraper getSimpleMessageWraper(){ return new SimpleMessageWraper(props); } /** * 功能:邮件发送 */ public static void send(SimpleMessageWraper messageWraper)throws Exception{ MimeMessage mimeMessage = messageWraper.getMimeMessage(); Transport transport = messageWraper.getSession().getTransport(simpleMailConfig.getTransport()); transport.connect(simpleMailConfig.getHost(), simpleMailConfig.getUsername(), simpleMailConfig.getPassword()); transport.sendMessage(mimeMessage, mimeMessage.getAllRecipients()); transport.close(); } }
3、包含邮件配置信息的bean对象
<bean id="simpleMailConfig" class="com.cjm.common.mail.SimpleMailConfig"> <property name="host" value="smtp.163.com"/> <property name="username" value="uid"/> <property name="password" value="pwd"/> <property name="auth" value="true"/> </bean>
4、实例代码
SimpleMessageWraper w1 = SimpleMailFactory.getSimpleMessageWraper(); w1.setFrom("ServerMailAddress@163.com"); w1.setTo(new String[]{"TargetAddress@139.com"}); w1.setSubject("标题"); w1.setText("邮件内容"); w1.addAttactment(new File("c:\\附件.txt")); SimpleMailFactory.send(w1);
发表评论
-
HttpClient容易忽视的细节——连接关闭
2012-03-02 09:15 580HttpClient client = new HttpCli ... -
HTTPClient的多线程编程
2012-03-02 09:09 1444Axis2的连接主要采用了HttpClient进行与服务器的服 ... -
HttpClient超时区别
2012-03-02 09:07 1042HttpClient 4 设置超时 httpclient 超时 ... -
HttpClient Theading
2012-03-01 10:49 637有技术兴趣的 请加28830308群. 这篇文章概括了怎样在 ... -
HttpClient使用
2012-03-01 10:43 670有技术兴趣的 请加28830308群. HttpClien ... -
线程请求执行,一个多线程程执行HTTP请求的例子。
2012-03-01 10:40 1717package cn.lake.util; import ... -
httpclient 4 下载 文件
2012-03-01 10:38 887import java.io.File; import ja ... -
使用了httpclient实现的上传商品的demo
2012-03-01 10:36 1116package com.taobao.top.sample.u ... -
socket简介
2012-02-07 10:58 651第一步 充分理解Socket ... -
转载socket
2012-02-07 10:57 530对TCP/IP、UDP、Socket编程这些词你不会很陌生吧? ... -
Java的synchronized关键字:同步机制总结
2012-02-07 10:54 535不久前用到了同步,现在回过头来对JAVA中的同步做个总结,以对 ... -
JAVA RMI
2012-02-07 10:53 545Java RMI 指的是远程方法调用 (Remote Meth ... -
JXL生成复杂的EXCEL
2011-12-26 13:52 1343public String ExcelTaskRepo ... -
如何快速的为现有数据库建立数据字典?
2011-12-20 13:55 955大部分项目在验收时都需要向客户提供一份详细的数据字典,而编写数 ... -
在java中获取客户端真实的IP地址
2011-12-20 13:55 521public static String getRemoteA ... -
在项目中整合FreeMarker框架
2011-12-16 15:40 557FreeMarker是一个用Java编写的模板引擎,既可以 ... -
Commons FTP范例
2011-12-16 15:33 480public class FtpUtil { privat ... -
Java实现的图片生成器
2011-12-16 15:32 485一、本图片生成器具有以下功能特性: 1、可以设置图 ... -
jacob学习总结
2011-12-16 15:27 402JACOB 就是 JAVA-COM Bridge的缩写,提供自 ... -
长短信发送范例
2011-12-16 15:25 659一、关键代码: private synchronized v ...
相关推荐
MyEclipse 项目 博文链接:https://siy410.iteye.com/blog/1101864
利用JavaMail API来发送Email的工具类 支持单发,群发及无限制数量的附件功能,并同时支持简单邮件和HTML两种格式的邮件内容 支持抄送,密送功能 具体使用参见其mail方法的使用示例
JavaMail API是读取、撰写、发送电子信息的可选包。我们可用它来建立如Eudora、Foxmail、MS Outlook Express一般的邮件用户代理程序(Mail User Agent,简称MUA)。而不是像sendmail或者其它的邮件传输代理(Mail ...
JavaMail API是读取、撰写、发送电子信息的可选包。我们可用它来建立如Eudora、Foxmail、MS Outlook Express一般的邮件用户代理程序(Mail User Agent,简称MUA)。而不是像sendmail或者其它的邮件传输代理(Mail ...
JavaMail API是读取、撰写、发送电子信息的可选包。我们可用它来建立如Eudora、Foxmail、MS Outlook Express一般的邮件用户代理程序(Mail User Agent,简称MUA)。而不是像sendmail或者其它的邮件传输代理(Mail ...
详细讲解了利用javamail所提供的API来实现邮件收发的功能
很好的邮件处理代码,1.5版本,作为build path放在eclipse里面,就可以用啦! oracle官方推的,很好!jdk1.6版本以上用起来很方便。
javamail实现的163邮箱发送到腾讯邮件的示例、 已经javamail的详细API级demo!
本系统利用SMTP协议和POP协议从底层进行开发,利用JavaMail API为收发邮件提供与协议无关的访问。SMTP(简单邮件传输协议)是专门用来发送邮件的。POP(邮局协议)是专门用于接收邮件的。JavaMail API是一种可选的、...
通过 Java 代码来创建电子邮件,并连接邮件服务器进行发送。上传资源包括:JavaMail API.CHM,JavaMail API.chw,mail.jar,mailTest.java。
JavaMail是Oracle甲骨文开发的Java邮件类API,支持多种邮件协议,这里我们就来看一下Java使用JavaMail API发送和接收邮件的代码示例
基于JavaMail的邮件收发系统是一种用于发送和接收电子邮件的应用程序,它基于JavaMail API来实现与邮件服务器的通信,并提供用户界面来进行邮件的管理和操作。以下是对该系统实现的描述: 用户界面: 系统提供了...
JavaMail API发送邮件,主要三个类,密码认证器,Mail消息集合,发送工具类
http://stackoverflow.com/questions/2020088/sending-email-in-android-using-javamail-api-without-using-the-default-android-app的源码,已实现可发送邮件。
Javamail API是一个用于阅读、编写和发送电子消息的可选包(标准扩展),可以用来建立基于标准的电子邮件客户机,它支持各种因特网邮件协议,包括:SMTP、POP、IMAP、MIME、NNTP、S/MIME及其它协议。
本系统利用SMTP协议和POP协议从底层进行开发,利用JavaMail API为收发邮件提供与协议无关的访问。SMTP(简单邮件传输协议)是专门用来发送邮件的。POP(邮局协议)是专门用于接收邮件的。JavaMail API是一种可选的、...
JavaMail API是SUN为Java开发者提供对电子邮件处理的延伸,能用于读取、编写和发送电子消息的包(标准扩展)。为管理电子邮件提供了统一的应用编程接口,它可以处理各种e-mail格式(包括IMAP、POP、SMTP以及MIME)和...
本系统利用SMTP协议和POP协议从底层进行开发,利用JavaMail API为收发邮件提供与协议无关的访问。SMTP(简单邮件传输协议)是专门用来发送邮件的。POP(邮局协议)是专门用于接收邮件的。JavaMail API是一种可选的、...
JavaMail API是一种可选的、能用于读取、编写和发送电子消息的包(标准扩展)。您可使用这种包创建邮件用户代理(Mail User Agent ,MUA) 类型的程序,它类似于Eudora、Pine及Microsoft Outlook这些邮件程序。其...