- 浏览: 457270 次
- 性别:
- 来自: 潘多拉
文章分类
最新评论
-
lijunwyf:
代码好像不完整,后端没串起来的感觉
Json-RPC for java首次尝试 -
jerry.chen:
我用这种方式去,貌似没啥效果,楼主!
Xfire开发的webservice客户端超时问题解决 -
漫步邃思:
这个问题常遇到,老是想不起来解决方法,记住了
resin3.1.0无法解析EL表达式问题解决 -
dampce032:
在不删掉integratedSecurity=true;的情况 ...
JDBC 连接SQLServer数据库(Failed to load the sqljdbc_auth.dll) -
kill_e680:
取CPU号和取硬盘号,在linux下可以用吗?
sigar使用:在web中应用sigar取得系统信息
一:Quick Start
通过SimpleEmail发送邮件
就如代码里字面上的意思一样简单:
1:创建以SimpleEmail对象
2:设定发送信件的smtp服务器,如果没有设定,会寻找系统变量中mail.host值。
3:设定smtp的用户和密码
4:收件人
5:发件人
6:主题
7:内容
8:发送
二:发送带附件的邮件
我们可以发送本机的附件,当然我们也可以发送非本机的附件,如果发送的是一个存在网络上的附件的url,则邮件发送的时候会自动下载,添加到附件中。
三:发送html格式的邮件
四:最后一步
如果需要实现更复杂authenticator 你可以extends javax.mail.Authenticator ,实现你自己的东西,然后调用Email.setAuthenticator(javax.mail.Authenticator newAuthenticator)即可
这一点jakarta也做了,给我们提供了一个defaultAuthenticator
java.lang.Object
javax.mail.Authenticator
org.apache.commons.mail.DefaultAuthenticator
覆盖掉该方法,实现你自己的东东 o_o
protected javax.mail.PasswordAuthentication getPasswordAuthentication()
顺便再整理一下,朋友讨论的关于一些jakarta commons email出现乱码的问题:
一:通过SimpleEmail发送中文内容出现乱码的问题
SimpleEmail的代码如下
只是采用默认的,
1public static final String TEXT_PLAIN = "text/plain";
并没有指定编码。
如果通过SimpleEmail发送,需要指定编码:Water Ye@ITO 的说明
1email.setContent("测试邮件", "text/plain;charset=GBK");
二:关于附件中文名称乱码的问题:
需使用MimeUtility
原因是在MIME的相应规范中(RFC2047等)说明了附件标题必须是US-ASCII字符, 所以在发送中文标题的附件时需要编码成US-ASCII字符, 有两种编码方式: B (BASE64), Q (Quoted-Printable), 这些方法在MimeUtility里
都已经做了封装, 所以在发送附件时使用如下:
通过SimpleEmail发送邮件
java.lang.Object org.apache.commons.mail.Email org.apache.commons.mail.SimpleEmail SimpleEmail email = new SimpleEmail(); email.setHostName("mail.4ya.cn"); email.setAuthentication("<username>","<password>") email.addTo("martin.xus@gmail.com", "martin"); email.setFrom("martin@4ya.cn", "martin"); email.setSubject("测试主题"); email.setMsg("这里是邮件内容"); email.send();
就如代码里字面上的意思一样简单:
1:创建以SimpleEmail对象
2:设定发送信件的smtp服务器,如果没有设定,会寻找系统变量中mail.host值。
3:设定smtp的用户和密码
4:收件人
5:发件人
6:主题
7:内容
8:发送
二:发送带附件的邮件
我们可以发送本机的附件,当然我们也可以发送非本机的附件,如果发送的是一个存在网络上的附件的url,则邮件发送的时候会自动下载,添加到附件中。
1:)发送本地附件: EmailAttachment attachment = new EmailAttachment(); attachment.setPath("test/test.rar"); attachment.setDisposition(EmailAttachment.ATTACHMENT); attachment.setDescription("python resource"); attachment.setName("resource"); 2:)发送不存在本地的附件 EmailAttachment attachment = new EmailAttachment(); attachment.setURL(new URL("http://www.smilinglibrary.org/sldoc/pics/index03.jpg")); attachment.setDisposition(EmailAttachment.ATTACHMENT); attachment.setDescription("微笑图书馆"); attachment.setName("微笑图书馆"); next,添加附件到我们的邮件中 MultiPartEmail email = new MultiPartEmail(); email.setHostName("mail.4ya.cn"); email.setAuthentication("<username>","<password>") email.addTo("martin.xus@gmail.com", "martin"); email.setFrom("martin@4ya.cn", "martin"); email.setSubject("邮件主题"); email.setMsg("邮件内容"); //添加附件 email.attach(attachment); //发送邮件 email.send(); 如果需要发送多个附件,只需创建多个EmailAttachement,即可 email.attach(attachment1) email.attach(attachment2)
三:发送html格式的邮件
通过HtmlEmail我们可以发送Html格式的邮件: java.lang.Object org.apache.commons.mail.Email org.apache.commons.mail.MultiPartEmail org.apache.commons.mail.HtmlEmail 如下: 1//HtmlEmail! HtmlEmail email = new HtmlEmail(); email.setHostName("mail.4ya.cn"); email.setAuthentication("<username>","<password>") email.addTo("martin@4ya.cn"martin"); email.setFrom("martin.xus@gmail.com"martin"); email.setSubject("主题:该邮件包括html格式内容"); // embed the image and get the content id // 注意这里:embed 将帮助我们创建标签如:cid:xxx url URL url = new URL("http://www.apache.org/images/asf_logo_wide.gif"); String cid = email.embed(url, "Apache logo"); /** set the html message 我们看到HtmlEmail extends Email的,它依然有setMsg(),但是这里发送的邮件包括了插入在邮件内容中的图片,所以不能在使用了setMsg(),而要以setHtmlMsg 或setTextMsg代码 **/ email.setHtmlMsg("<html>The apache logo - <img src=\"cid:"+cid+"\"></html>"); // set the alternative message email.setTextMsg("Your email client does not support HTML messages"); //set mail email.send();
四:最后一步
如果需要实现更复杂authenticator 你可以extends javax.mail.Authenticator ,实现你自己的东西,然后调用Email.setAuthenticator(javax.mail.Authenticator newAuthenticator)即可
这一点jakarta也做了,给我们提供了一个defaultAuthenticator
java.lang.Object
javax.mail.Authenticator
org.apache.commons.mail.DefaultAuthenticator
覆盖掉该方法,实现你自己的东东 o_o
protected javax.mail.PasswordAuthentication getPasswordAuthentication()
顺便再整理一下,朋友讨论的关于一些jakarta commons email出现乱码的问题:
一:通过SimpleEmail发送中文内容出现乱码的问题
SimpleEmail的代码如下
public class SimpleEmail extends Email { /** * Set the content of the mail * * @param msg A String. * @return An Email. * @throws EmailException see javax.mail.internet.MimeBodyPart * for definitions * @since 1.0 */ public Email setMsg(String msg) throws EmailException { if (EmailUtils.isEmpty(msg)) { throw new EmailException("Invalid message supplied"); } setContent(msg, Email.TEXT_PLAIN); return this; } }
只是采用默认的,
1public static final String TEXT_PLAIN = "text/plain";
并没有指定编码。
如果通过SimpleEmail发送,需要指定编码:Water Ye@ITO 的说明
1email.setContent("测试邮件", "text/plain;charset=GBK");
二:关于附件中文名称乱码的问题:
需使用MimeUtility
原因是在MIME的相应规范中(RFC2047等)说明了附件标题必须是US-ASCII字符, 所以在发送中文标题的附件时需要编码成US-ASCII字符, 有两种编码方式: B (BASE64), Q (Quoted-Printable), 这些方法在MimeUtility里
都已经做了封装, 所以在发送附件时使用如下:
1MimeUtility.encodeText(filename)); EmailAttachment attachment = new EmailAttachment(); attachment.setPath("c:\\测试.txt"); attachment.setDisposition(EmailAttachment.ATTACHMENT); attachment.setDescription("测试文件"); // attachment.setName(MimeUtility.encodeText("测试文件.txt")); MultiPartEmail email = new MultiPartEmail(); email.setHostName("192.168.0.3"); email.setAuthentication("martin.xus", "1234"); email.addTo("martin.xus@192.168.0.3", "martin"); email.setFrom("martin.xus@192.168.0.3", "martin"); email.setSubject("测试带附件"); email.setMsg("该邮件含附件"); //添加附件 email.attach(attachment); //发送邮件 email.send(); end ---------------------------------------------------------------------------------
发表评论
-
myeclipse 6.5 blue 注册码
2015-01-19 12:38 807package com.kk.test; import ja ... -
xml解析[转]
2011-09-22 17:39 902jameswxx 原创 在平时工作中,难免会遇到把XML作为数 ... -
ValidateUtil
2011-09-20 08:12 1691import java.io.Serializable; ... -
log4j中关闭Hibernate调试信息
2011-09-14 08:39 2174在tomcat启动的时候,出现这个警告: log4j:WAR ... -
log4j知识点
2011-08-29 08:56 11351、Log4j.properties中至少有一个appende ... -
解决AJAX传送中文会导致乱码的问题
2011-07-16 09:46 911使用POST的时候: //如果传送参数是直接赋予的,就会产生乱 ... -
提升网站程序开发安全的6大诀窍
2011-07-16 09:43 8311.前后、端都要检查使用者输入 许多程序开发人员喜欢用Java ... -
Web测试方法
2011-07-16 09:34 16在Web工程过程中,基于Web系统的测试、确认和验收是一项重要 ... -
Ajax-------IE和FIREFOX 脚本的一些区别
2011-07-16 09:13 9951:innerText IE支持,FIREFO ... -
一段截屏的代码
2011-07-15 17:14 894import java.awt.Dimension ... -
Java实现给图片添加水印
2011-07-15 16:38 1018package com.ccniit.url; im ... -
始终会用上的Common BeanUtils
2011-07-15 16:37 820Beanutils用了魔术般的反射技术,实现了很多夸张有用的功 ... -
JAVA生成缩略图
2011-07-15 16:34 1318方法1:[第一种方法比后一种生成的缩略图要清晰] imp ... -
JAVA编程技巧之如何实现HTTP的断点续传
2011-07-15 16:32 993(一)断点续传的原理 其实断点续传的原理很简单,就是在Htt ... -
jspSmartUpload上传下载全攻略
2011-07-15 16:27 1219一、安装篇 jspsmartupload是由www.js ... -
关于Java的Cookie操作
2011-07-15 16:05 9511.设置Cookie 1Cookie cookie ... -
Javamail操作指南
2011-07-15 16:03 1399怎样才算比较完整的Javamail操作指南?我想应该包括绝大多 ... -
SQLHelper类(Java版)
2011-07-15 15:38 1577SQLHelper类(Java版), 模仿微软提供的SQLHe ... -
java汉字转拼音
2011-07-15 15:15 1098//将汉字转换为全拼 public static Str ... -
Java 调用CMD 命令
2011-07-15 15:07 1328java的Runtime.getRuntime().exec( ...
相关推荐
基于Java调用邮件系统所需要的jar包,commons-email-1.5.jar,javax.mail-1.4.5.jar,activation.jar
赠送jar包:commons-email-1.5.jar; 赠送原API文档:commons-email-1.5-javadoc.jar; 赠送源代码:commons-email-1.5-sources.jar; 赠送Maven依赖信息文件:commons-email-1.5.pom; 包含翻译后的API文档:...
1)将文件放入libs后,在gradle文件里加入implementation files('libs/commons-email-1.5.jar') 2)android收发邮件会要求引入此jar包
集成邮件发送所需要的四个jar包,activation.jar、additionnal.jar、commons-email-1.4.jar、mail.jar
jar包大小:135KB commons-validator-1.3.1.jar jar包大小:93KB commons-transaction-1.2.jar jar包大小:141KB commons-scxml-0.6.jar jar包大小:254KB commons-primitives-1.0.jar jar包大小:60KB commons-pool-1.3....
邮件开发包,email包,是开发web常用包
commons-email-1.5-src.zip 借助commons-email简化发送邮件的过程
commons-email-1.4.jarcommons-email-1.4.jarcommons-email-1.4.jar
开发工具 commons-fileupload-1.3.2开发工具 commons-fileupload-1.3.2开发工具 commons-fileupload-1.3.2开发工具 commons-fileupload-1.3.2开发工具 commons-fileupload-1.3.2开发工具 commons-fileupload-1.3.2...
activation.jar commons-email-1.2.jar mail.jar免费下载
commons-logging-1.0-javadoc.jar, commons-logging-1.0.1-javadoc.jar, commons-logging-1.0.1.jar, commons-logging-1.0.2-javadoc.jar, commons-logging-1.0.2.jar, commons-logging-1.0.3-javadoc.jar, commons-...
Java发送邮件所需要的几个JAR包,打包发给大家,包含以下内容: commons-email-1.1.jar mail.jar additionnal.jar activation.jar
赠送jar包:commons-email-1.5.jar; 赠送原API文档:commons-email-1.5-javadoc.jar; 赠送源代码:commons-email-1.5-sources.jar; 赠送Maven依赖信息文件:commons-email-1.5.pom; 包含翻译后的API文档:...
NULL 博文链接:https://liangq.iteye.com/blog/1222307
包含邮件发送的jar包,同时添加实现过程文章的连接,个人觉着操作简单,可以轻松实现邮件发送功能。啦啦啦啦啦啦啦啦啦
commons-email-1.2 api 说明
commons-beanutils-1.8.0-bin.zip commons-collections-3.2.1-bin.zip ...commons-email-1.1-bin.zip commons-fileupload-1.2.1-bin.zip commons-io-1.4-bin.zip commons-lang-2.4-bin.zip commons-net-1.4.1.zip
commons-email-1.4
标签:commons、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
常用jar包下载,包括commons-beanutils-1.9.3、commons-collections-3.2.2、commons-collections4-4.1