- 浏览: 34103 次
- 性别:
- 来自: 湖南
文章分类
最新评论
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 621HttpClient client = new HttpCli ... -
HTTPClient的多线程编程
2012-03-02 09:09 1486Axis2的连接主要采用了HttpClient进行与服务器的服 ... -
HttpClient超时区别
2012-03-02 09:07 1075HttpClient 4 设置超时 httpclient 超时 ... -
HttpClient Theading
2012-03-01 10:49 679有技术兴趣的 请加28830308群. 这篇文章概括了怎样在 ... -
HttpClient使用
2012-03-01 10:43 727有技术兴趣的 请加28830308群. HttpClien ... -
线程请求执行,一个多线程程执行HTTP请求的例子。
2012-03-01 10:40 1764package cn.lake.util; import ... -
httpclient 4 下载 文件
2012-03-01 10:38 958import java.io.File; import ja ... -
使用了httpclient实现的上传商品的demo
2012-03-01 10:36 1159package com.taobao.top.sample.u ... -
socket简介
2012-02-07 10:58 687第一步 充分理解Socket ... -
转载socket
2012-02-07 10:57 577对TCP/IP、UDP、Socket编程这些词你不会很陌生吧? ... -
Java的synchronized关键字:同步机制总结
2012-02-07 10:54 578不久前用到了同步,现在回过头来对JAVA中的同步做个总结,以对 ... -
JAVA RMI
2012-02-07 10:53 578Java RMI 指的是远程方法调用 (Remote Meth ... -
JXL生成复杂的EXCEL
2011-12-26 13:52 1387public String ExcelTaskRepo ... -
如何快速的为现有数据库建立数据字典?
2011-12-20 13:55 998大部分项目在验收时都需要向客户提供一份详细的数据字典,而编写数 ... -
在java中获取客户端真实的IP地址
2011-12-20 13:55 556public static String getRemoteA ... -
在项目中整合FreeMarker框架
2011-12-16 15:40 584FreeMarker是一个用Java编写的模板引擎,既可以 ... -
Commons FTP范例
2011-12-16 15:33 506public class FtpUtil { privat ... -
Java实现的图片生成器
2011-12-16 15:32 522一、本图片生成器具有以下功能特性: 1、可以设置图 ... -
jacob学习总结
2011-12-16 15:27 448JACOB 就是 JAVA-COM Bridge的缩写,提供自 ... -
长短信发送范例
2011-12-16 15:25 693一、关键代码: private synchronized v ...
相关推荐
以下是一个简单的JavaMail API发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class EmailSender { public static void main(String[] args) throws Exception { // ...
JavaMail API 1.4.7 是一个广泛使用的开源库,专为Java开发者设计,用于处理电子邮件相关的任务。这个版本的API提供了丰富的功能,包括发送、接收邮件,管理邮箱,处理附件,以及支持多种邮件协议如SMTP(简单邮件...
JavaMail 是一个 Java API,用于在 Java 应用程序中发送和接收电子邮件。它提供了一个抽象层,允许开发者使用不同的电子邮件协议,例如 SMTP、POP3 和 IMAP。 在本文中,我们将讨论如何使用 JavaMail 库来代发邮件...
JavaMail API是Java平台上用于处理电子邮件的一套标准API,它为开发者提供了丰富的接口和类,以便于发送、接收和管理电子邮件。JavaMail API是Java EE的一部分,但也可以在Java SE环境中使用。`javaMail.jar`是...
使用JavaMail API的内容会涵盖实际的代码示例,比如如何创建和发送简单的文本邮件、带有附件的邮件,以及如何接收和读取邮件。这部分还会涉及到认证机制,如如何设置用户名和密码进行SMTP身份验证,以及SSL/TLS安全...
JavaMail API 是一个开源的Java库,用于处理电子邮件的创建、发送和接收。这个API提供了一组接口和类,使得开发者能够直接与SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)服务器进行交互...
例如,你可以创建一个名为`SendMailAction`的类,其中包含一个`execute()`方法,这个方法使用JavaMail API发送邮件。 如果你的项目中包含一个名为`mySendMail`的类或文件,这可能是一个实现邮件发送的示例代码。这...
JavaMail API是Java编程语言中用于处理电子邮件的库,它为开发者提供了丰富的接口和类,以便于发送、接收和管理电子邮件。在JavaMail API中,`mail.jar`是一个核心组件,包含了实现邮件功能所需的全部类和接口。在这...
JavaMail API是Java编程语言中用于处理邮件服务的接口库,它允许开发者通过代码来发送、接收和管理电子邮件。在JavaMail API中,`mail.jar` 和 `activation.jar` 是两个核心的JAR文件,它们提供了不同的功能支持。 ...
例如,使用JavaMail API发送邮件时,开发者需要使用Session、Message、Transport等类,并且可能需要配置邮件服务器的相关参数,比如SMTP服务器的地址、端口、登录用户名和密码等。 总的来说,JavaMail API是一个...
这个“javamail发送邮件.zip”压缩包显然包含了一个示例项目,演示如何使用JavaMail API发送包含正文文本、图片以及附件的邮件。以下是对这个主题的详细解释: 1. **JavaMail API**: JavaMail API 是一组接口和类...
10. **POP3和IMAP支持**:JavaMail API不仅支持SMTP(发送邮件),还支持POP3(接收邮件)和IMAP(更高级的邮件访问协议)。 以上只是一部分JavaMail API的关键概念和功能。通过阅读提供的英文帮助文档,开发者可以...
以上就是使用JavaMail API发送邮件的基本步骤。需要注意的是,实际应用中可能需要处理各种异常,如网络问题、认证失败等。此外,对于SSL/TLS安全连接,还需要设置相应的属性,如`mail.smtp.starttls.enable`。 ...
JavaMail API是Java平台上的一个强大工具,它为开发者提供了处理邮件系统交互的能力,包括发送、接收、管理邮件等。这篇博文将深入探讨JavaMail API的设计规范,帮助读者理解其核心概念和使用方法。 一、JavaMail ...
JavaMail API是Java平台上用于处理电子邮件的一套强大的库,它为开发者提供了丰富的功能,使得在应用程序中发送和接收邮件变得简单。本文将深入探讨JavaMail API的各个方面,帮助你理解和掌握这一关键工具。 首先,...
总之,JavaMail API是Java开发者处理电子邮件的核心工具,掌握了它,你就能构建出功能强大的邮件系统,无论是简单的发送邮件,还是复杂的邮件管理,都能轻松应对。通过深入学习和实践,你将成为JavaMail API的专家,...
### JavaMail API详解 #### 一、概述与背景 JavaMail API是用于处理电子邮件的一组...总之,JavaMail API是一个功能全面且易于使用的邮件处理工具,它极大地简化了在Java应用程序中实现邮件发送和接收功能的过程。
JavaMail API是Java平台上的一个标准接口,用于发送和接收电子邮件。它提供了丰富的类和接口,使得开发者可以方便地在应用程序中集成电子邮件功能。本文将深入探讨JavaMail API的核心类,帮助你理解如何利用这些类来...
JavaMail API是一种基于Java的可选扩展包,用于读取、编写和发送电子消息,主要用于创建类似于Eudora、Pine或Microsoft Outlook这样的邮件用户代理(MUA)程序。MUA是直接与用户交互的邮件客户端程序,而不同于邮件...