`
wuhua
  • 浏览: 2114434 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

邮件发送API整理

阅读更多
      这几天设计一个项目要大量采用邮件发送API,所以自己就整理了以前零散的代码,把它整理成一个类。希望对有需要的同志使用。
定义一个邮件配置文件,这样方便修改一些配置,程序只需读取这个配置文件,这样方便以后改Email时候不用修改源代码
java 代码
 
  1. /** 
  2.  * 提供发邮件的地址 
  3.  */  
  4. public static   String HOST_MAIL_NAME = "xxx@teesoo.com";  
  5.   
  6. /** 
  7.  * 提供发邮件的地址 
  8.  */  
  9. public static   String HOST_MAIL_PASSWORD = "xxx";  
  10.   
  11. /** 
  12.  * 邮件发送协议 
  13.  */  
  14. public static   String SMTP = "mail.teesoo.com";  
  15.   
  16. /** 
  17.  * 邮件接收协议 
  18.  */  
  19. public static   String POP3 = "mail.teesoo.com";  

发送邮件API
java 代码
 
  1. public static void send(String to, String subject, String body) throws Exception{  
  2.     Mailer mail = new Mailer(ManageConfig.SMTP);  
  3.     mail.setNamePass(ManageConfig.HOST_MAIL_NAME, ManageConfig.HOST_MAIL_NAME);  
  4.     mail.setFrom(ManageConfig.HOST_MAIL_NAME);  
  5.     mail.setSubject(subject);  
  6.     mail.setBody(body, false);  
  7.     mail.setTo(to);  
  8.     mail.setNeedAuth(true);  
  9.     mail.sendout();  
  10. }  

写的很菜,不过还是发出来了。
  • src.rar (3 KB)
  • 下载次数: 1757
分享到:
评论
21 楼 challenge2007 2007-09-04  
问一下,javamail的源码哪里有呀?
20 楼 tony.lee 2007-02-02  
to Kirin:

http://jakarta.apache.org/site/downloads/downloads_commons-email.cgi

修改页面上Other mirrors: 栏位,选择第二项,就可以下了。
19 楼 robinzhang 2007-02-02  
收下了
18 楼 xufanbb 2007-02-01  
引用
以前做办公系统用到java mail,这是一个非常底层的接口,对中文的支持不是很理想。记得为了收到一封完整无乱码的邮件,折腾了半天也未必理想,只能利用一些比较知名的网站邮箱进行测试,有些从旮旯里发出来的邮件愣是乱码,然后就接到用户的投诉,“我又收到的邮件乱码”,工程师苦不堪言。象apache的common似乎也提供了高级接口,但是也只实现了发信,收邮件的复杂度要高得多,也理解这些老外为什么不提供收邮件接口,恐怕这也是原因之一。记得曾经接入过江苏移动的企业邮箱,通过授权方式怎么也登陆不了邮件服务器,后来经过对java mail调试,终于发现javamail对这个服务器的签权响应不对,只好改了javamail的源代码后重新编译打包。

哈哈,江苏移动的邮箱就是我们公司做的,邮件一定要遵循编码规范(包括邮件头,邮件体),一般大的邮件系统的都按照规范解析邮件,但是outlook兼容性还是比较好的。
如下范例:


Return-Path: <lnf@ceno.cn>
Delivered-To: fxu@ceno.cn
X-Lasthop: 222.66.111.46
Received: from unknown (helo IBMCB5E05156C8)(unknown@222.66.111.46)
	by ws02 with SMTP; Thu, 01 Feb 2007 05:59:38 +0000
Message-ID: <000801c745c6$27f27230$ea02a8c0@IBMCB5E05156C8>
From: =?gb2312?B?wfXE7rfl?= <lnf@ceno.cn>
To: <fxu@ceno.cn>,
	<yfyang@ceno.cn>
Cc: <jfxu@ceno.cn>
Subject: =?gb2312?B?1eO9rbXn0MXP7sS/0rPD5kJVRw==?=
Date: Thu, 1 Feb 2007 13:59:36 +0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0005_01C74609.34F1CBA0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.3028
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028
17 楼 icyboy 2007-02-01  
谢谢了
学习学习先...
16 楼 sizhefang 2007-01-30  
最近也在做javamail项目,有时间了整理一个收邮件的程序与大家讨论
15 楼 terrysky 2007-01-30  
mail如果写好了的确需要一定功底
14 楼 wuhua 2007-01-29  
楼主建议不错。<br/>
我觉得用日志不错<br/>
对与群发功能,我觉得不难<br/>
只需建立一个群发地址表。<br/>
然后put发送队列就可以了。<br/>
楼主也可以做些相应的扩展,贡献给大家啊
13 楼 klyuan 2007-01-29  
System.out.println("邮件发?s送?成功!")
用日志组件可能会更好一点吧!

另外群发功能好像没有实现
12 楼 czwangelo 2007-01-26  
不错,谢谢楼主,收下了
11 楼 leonardleonard 2007-01-26  
发送邮件有用处的代码,收下了。
10 楼 kirin 2007-01-25  
哪位能把apache的commons-email jar包和src发到临时共享ftp里
我能打开下载页面但是死活载不下来,谢谢了!
这是下载页面
http://jakarta.apache.org/site/downloads/downloads_commons-email.cgi
9 楼 challenge2007 2007-01-24  
受益非浅
呵呵!
8 楼 newman 2007-01-24  
以前做办公系统用到java mail,这是一个非常底层的接口,对中文的支持不是很理想。记得为了收到一封完整无乱码的邮件,折腾了半天也未必理想,只能利用一些比较知名的网站邮箱进行测试,有些从旮旯里发出来的邮件愣是乱码,然后就接到用户的投诉,“我又收到的邮件乱码”,工程师苦不堪言。象apache的common似乎也提供了高级接口,但是也只实现了发信,收邮件的复杂度要高得多,也理解这些老外为什么不提供收邮件接口,恐怕这也是原因之一。记得曾经接入过江苏移动的企业邮箱,通过授权方式怎么也登陆不了邮件服务器,后来经过对java mail调试,终于发现javamail对这个服务器的签权响应不对,只好改了javamail的源代码后重新编译打包。
7 楼 myhouse 2007-01-23  
public void main(String[] args){
    for(String item:args){
      System.out.printf("%s%n",item);
    }
}
6 楼 myhouse 2007-01-23  
引用
color=#FF0000qqqqqqqqqqqqqqq
5 楼 myhouse 2007-01-23  
b
i
4 楼 wuhua 2007-01-23  
在设计的过程中发现,用户注册的时候,我们要发一封邮件叫用户进行激活,这是很多系统都要的功能。<br/>
在用户注册的时候,因为每次都要连接邮件服务器,跟发送邮件,而且这些操作都在一个线程了,造成了速度很慢,所以我把这些都整理出来,采用线程,跟邮件队列来发送这些邮件<br/>
注意,因为采用的是一个concurrent.jar,这个包在jdk1.5已经有了,1.5以下的版本则需要去下载。<br/>
<br/>
设计以后,只需要在action构造一个Email对象,然后通过send(email)就行了。而且因为是采用线程的,所以对注册没有影响。<br/>
<br/>
今天真的好惨,再测试的时候,有时候能发送邮件,但是却收不到邮件,后来发现原来那边的服务器把我发送的内容给过滤了。好惨查了一个下午,连个Http连接也不给发,超不爽
3 楼 logonin 2007-01-22  
谢谢
楼上说的用spring的代理邮件系统能不能发一份
2 楼 IvanLi 2007-01-22  
Spring 的JavaMailSenderImpl + MimeMessageHelper更方便一些

相关推荐

    疯狂的IT人整理java邮件发送(源码)

    这个压缩包“疯狂的IT人整理java邮件发送(源码)”提供了一个完整的Java邮件发送解决方案,其中包含了必要的配置文件和源代码,使得开发者在构建系统时能够快速集成邮件功能。 首先,我们来看一下邮件发送的基本...

    如何使用邮件代码发送邮件[整理].pdf

    SMTP服务器负责将邮件发送到接收者的邮箱,而接收者通常通过POP3或IMAP协议来下载邮件。在编写代码时,我们需要连接到SMTP服务器并发送必要的命令来完成邮件的传递。 在HTML模式下编辑邮件内容是提高邮件视觉效果的...

    JAVA+发送电子邮件源码整理

    本文将详细介绍如何使用Java实现电子邮件的发送功能,并基于提供的资源进行源码整理。 首先,我们需要理解JavaMail API,这是一个用于处理邮件的开放源代码库。JavaMail API提供了与各种邮件协议(如SMTP、POP3、...

    javaMail发送邮件依赖的jar包源码整理

    JavaMail 是一个开源的 Java API,它允许 Java ...通过研究这些源代码,你可以定制自己的邮件服务提供者,解决特定场景下的问题,或者优化邮件发送的性能。同时,对于学习邮件协议和网络编程,这是一份宝贵的资源。

    c#WPF读取excel文件超出预警信息发送邮件给指定人

    邮件发送部分,我们可以使用System.Net.Mail命名空间中的SmtpClient类来实现。不过,描述中提到邮件的发送方和接收方信息存储在JSON文件内。因此,我们需要先解析JSON文件,例如使用Newtonsoft.Json库的...

    JAVA+WEB邮件系统源码源码整理

    1. JavaMail API的使用,包括创建、发送和接收邮件。 2. Web应用的基本架构,如Servlet和JSP的协同工作。 3. 数据库操作,如通过DAO模式进行邮件信息的增删查改。 4. 安全性和权限管理,如使用密码保护源码。 5. ...

    邮件代码整理

    邮件发送的步骤大致如下: 1. 引入JavaMail相关依赖。 2. 创建`Properties`对象,配置SMTP服务器信息。 3. 创建`Session`对象,使用配置的属性。 4. 创建`MimeMessage`对象,设置发件人、收件人、主题和正文。 5. 如...

    实现支持邮件发送的功能

    这是一款可以实现支持邮件发送的功能,该功能SMTPSender主要是采用了socket通信来发送邮件,而且还可以支持发送附件、抄送、密送等功能,虽然没有什么UI界面的设计,但该功能值得我们的学习,另外那个接口是纯数据的...

    JAVA+WEB邮件系统源码Java实用源码整理learns

    这通常包括使用JavaMail API来处理邮件发送、接收以及邮件服务器的交互。JavaMail API是Java平台上的一个标准API,它允许开发者在Java应用程序中创建、读取、发送和管理邮件。 【描述】提到的是“Java实用源码整理...

    node调用接口获取数据,并发送邮件

    2. 异步编程:由于接口调用和邮件发送通常是异步操作,应使用Promise或async/await来管理这些操作,避免阻塞主线程。 3. 性能优化:如果需要处理大量用户数据,可以考虑分批请求或使用批量接口,以减少网络延迟和...

    精选_基于java.swing实现的发送邮件的小程序_源码打包

    通过研究这个源码,开发者可以学习如何在Java Swing环境中构建GUI,如何处理用户输入,以及如何利用JavaMail API进行邮件发送。同时,这也是一个很好的实践案例,展示了一个完整的、功能性的Java应用程序的结构和...

    永洪BI的webAPI文档

    - 调度任务管理(运行调度任务、设置调度任务中发送邮件任务的收件人等) - API能够管理调度任务,包括执行任务和配置任务的邮件通知。 - 数据操作(获取数据集的数据、导出组件数据等) - 可以通过API获取或导出...

    工资条逐行发放助手[Excel逐行发送电子邮件]

    接下来,助手软件会逐行读取工资条数据,并使用内置的邮件发送功能或者调用第三方邮件API(如SMTP协议)来发送电子邮件。邮件内容可以定制,通常包含员工的工资详情,且每封邮件的收件人地址根据Excel表格中对应的...

    J2EE的API英文版

    7. **JavaMail API**:用于处理电子邮件的API,包括发送、接收和管理邮件。 8. **Java Authentication and Authorization Service (JAAS)**:JAAS提供了用户身份验证和权限管理的框架,用于实现安全的J2EE应用。 9...

    wxh 邮件群发系统

    - **性能优化**:可能对邮件发送速度、内存占用、CPU使用率等方面进行了优化,提升用户体验。 - **错误修复**:v1.1通常会包含对之前版本中发现的问题和漏洞的修复,确保系统的可靠运行。 在实际应用中,正确使用...

    基于Javamail的邮件收发系统(系统+论文+开题报告+任务书+外文翻译+文献综述+答辩PPT).rar

    - `Transport`:负责发送邮件,通过 `Transport.send(Message)` 方法将邮件发送到指定服务器。 - `Store` 和 `Folder`:用于连接邮件服务器,读取和管理邮件。 2. 邮件协议:JavaMail 支持多种邮件协议,如 SMTP...

    基于web的电子邮件系统邮件协议研究与系统功能实现毕业(设计)论文.doc

    4. 邮件管理:用户可以读取、移动、删除邮件,对邮件进行分类和整理。 5. 设置其他邮箱:用户可以配置外部邮箱,以便从多个邮箱账户收取邮件。 6. 邮件解析:系统能解析不同格式的邮件,包括HTML和纯文本邮件。 7. ...

    Email工具发邮件

    开发者可以使用Silverlight的API来构建自定义的邮件发送组件,允许用户在网页上直接发送邮件,无需离开当前页面。不过,由于安全性问题和现代浏览器的兼容性问题,Silverlight在近年来已被HTML5和WebGL等技术取代。 ...

Global site tag (gtag.js) - Google Analytics