- 浏览: 133685 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
u010995675:
大神请问下itemclick: function(v,r,it ...
extjs4.2点击树形菜单生成tab页并访问发送请求 -
springdata_spring:
apache lucene开源框架demo使用实例教程源代码下 ...
lucene全文检索实例 -
www314599782:
嗯,调了半天出来了 pom.xml<dependenc ...
lucene全文检索实例 -
猜不透:
bonait 写道不错!但是可不可以和tomcat结合起来we ...
lucene全文检索实例 -
bonait:
不错!但是可不可以和tomcat结合起来
lucene全文检索实例
之前没弄过java程序发送邮件的功能,因为公司要求所以弄了下,不过还是遇到很多问题,比如下面这个异常,应该是说域名错误,如果遇到这种问题的话,可将smtp改成mail就解决了我的问题!!
javax.mail.SendFailedException: Sending failed; nested exception is: class javax.mail.MessagingException: Unknown SMTP host: smtp.dgnetcop.com;
下面把java发送邮件的代码贴出来
/** * */ package javaMail; import java.util.Date; import java.util.Enumeration; import java.util.Properties; import java.util.Vector; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.Authenticator; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Multipart; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; import javax.mail.internet.MimeUtility; /** * @author zj * */ public class SendMail { String to = "";// 收件人 String from = "";// 发件人 String host = "";// smtp主机 String username = ""; String password = ""; String filename = "";// 附件文件名 String subject = "";// 邮件主题 String content = "";// 邮件正文 Vector file = new Vector();// 附件文件集合 /** * <br> * 方法说明:默认构造器 <br> * 输入参数: <br> * 返回类型: */ public SendMail() { } /** * <br> * 方法说明:构造器,提供直接的参数传入 <br> * 输入参数: <br> * 返回类型: */ public SendMail(String to, String from, String smtpServer, String username, String password, String subject, String content) { this.to = to; this.from = from; this.host = smtpServer; this.username = username; this.password = password; this.subject = subject; this.content = content; } /** * <br> * 方法说明:设置邮件服务器地址 <br> * 输入参数:String host 邮件服务器地址名称 <br> * 返回类型: */ public void setHost(String host) { this.host = host; } /** * <br> * 方法说明:设置登录服务器校验密码 <br> * 输入参数: <br> * 返回类型: */ public void setPassWord(String pwd) { this.password = pwd; } /** * <br> * 方法说明:设置登录服务器校验用户 <br> * 输入参数: <br> * 返回类型: */ public void setUserName(String usn) { this.username = usn; } /** * <br> * 方法说明:设置邮件发送目的邮箱 <br> * 输入参数: <br> * 返回类型: */ public void setTo(String to) { this.to = to; } /** * <br> * 方法说明:设置邮件发送源邮箱 <br> * 输入参数: <br> * 返回类型: */ public void setFrom(String from) { this.from = from; } /** * <br> * 方法说明:设置邮件主题 <br> * 输入参数: <br> * 返回类型: */ public void setSubject(String subject) { this.subject = subject; } /** * <br> * 方法说明:设置邮件内容 <br> * 输入参数: <br> * 返回类型: */ public void setContent(String content) { this.content = content; } /** * <br> * 方法说明:把主题转换为中文 <br> * 输入参数:String strText <br> * 返回类型: */ public String transferChinese(String strText) { try { strText = MimeUtility.encodeText(new String(strText.getBytes(), "GB2312"), "GB2312", "B"); } catch (Exception e) { e.printStackTrace(); } return strText; } /** * <br> * 方法说明:往附件组合中添加附件 <br> * 输入参数: <br> * 返回类型: */ public void attachfile(String fname) { file.addElement(fname); } /** * <br> * 方法说明:发送邮件 <br> * 输入参数: <br> * 返回类型:boolean 成功为true,反之为false */ public boolean sendMail() { // 构造mail session Properties props = System.getProperties(); props.put("mail.smtp.host", host); props.put("mail.smtp.auth", "true"); Session session = Session.getDefaultInstance(props, new Authenticator() { public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(username, password); } }); try { // 构造MimeMessage 并设定基本的值 MimeMessage msg = new MimeMessage(session); msg.setFrom(new InternetAddress(from)); InternetAddress[] address = { new InternetAddress(to) }; msg.setRecipients(Message.RecipientType.TO, address); subject = transferChinese(subject); msg.setSubject(subject); // 构造Multipart Multipart mp = new MimeMultipart(); // 向Multipart添加正文 MimeBodyPart mbpContent = new MimeBodyPart(); mbpContent.setText(content); // 向MimeMessage添加(Multipart代表正文) mp.addBodyPart(mbpContent); // 向Multipart添加附件 Enumeration efile = file.elements(); while (efile.hasMoreElements()) { MimeBodyPart mbpFile = new MimeBodyPart(); filename = efile.nextElement().toString(); FileDataSource fds = new FileDataSource(filename); mbpFile.setDataHandler(new DataHandler(fds)); mbpFile.setFileName(fds.getName()); // 向MimeMessage添加(Multipart代表附件) mp.addBodyPart(mbpFile); } file.removeAllElements(); // 向Multipart添加MimeMessage msg.setContent(mp); msg.setSentDate(new Date()); // 发送邮件 Transport.send(msg); } catch (MessagingException mex) { mex.printStackTrace(); Exception ex = null; if ((ex = mex.getNextException()) != null) { ex.printStackTrace(); } return false; } return true; } /** * <br> * 方法说明:主方法,用于测试 <br> * 输入参数: <br> * 返回类型: */ public static void main(String[] args) { SendMail sendmail = new SendMail(); sendmail.setHost("smtp.dgnetcop.com");//发送邮件的域名,这里如果报上面的错误,可将smtp改成mail sendmail.setUserName("uuu");//你的用户名 sendmail.setPassWord("ppp");//你的密码 sendmail.setTo("xxx.com"); //发送给哪个地址 sendmail.setFrom("yyy.com");//你的邮箱 sendmail.setSubject("你好,这是一个测试"); sendmail.setContent("你好,这是一个测试!"); //sendmail.attachfile("d:\\test.html");//附件物理地址 sendmail.sendMail(); System.out.println("成功!"); } }
发表评论
-
java mybatis插入数据返回主键id
2019-08-01 21:03 1765mybatis 插入数据返回id,这一个功能我花了很久时间 ... -
extjs 4.2 分页,根据查询条件分页
2014-05-15 15:32 12025extjs 4.2 分页和根据查询条件分页 废话不 ... -
extjs4.2点击树形菜单生成tab页并访问发送请求
2014-05-10 12:01 8892以下是全部代码,使用的是extjs4.2.1,,代码复制 ... -
项目开发中遇到的问题总结
2013-05-09 16:01 14168近期在项目开发中所遇到的一些问题,记录下来,有空的的时候 ... -
lucene全文检索实例二(实现对10万条数据检索文件的增删改查操作)
2013-03-20 11:20 3015公司闲暇的时候自己做了个lucene3.6.0全文检索的示例 ... -
lucene全文检索实例
2013-03-14 10:19 7288在网上找了些关于lucen ... -
让java程序只运行一个实例
2013-03-08 09:53 7039最近做了个java项目,功能完成后打包安装了,发现可以点开多 ... -
让java程序只运行一个实例
2013-03-08 09:48 0最近做了个java项目,功 ... -
存入mysql的特殊字符变?号
2012-09-12 10:24 2758往mysql数据库存入坐标值 如114º03′15″ 存入数 ... -
axis2实现webservice分布式开发
2012-08-10 09:39 1630因为工作关系这两天在学习axis2实现webservice,然 ... -
webservice is not found. Have you run APT to generate them?
2012-07-26 13:50 3275WSSERVLET11: failed to parse ru ... -
Swing 实现进度条将excel和txt文本上传到mysql数据库(附工程压缩包)
2012-07-20 15:16 2920bean 类 public cla ... -
严重:Error starting static Resources 错误的解决
2012-07-05 21:58 0这个错误一般发生在你在Eclipse中删除了某个项目,但Tom ... -
严重:Error starting static Resources 错误的解决
2012-07-05 21:54 0这个错误一般发生在你在Eclipse中删除了某个项目,但Tom ... -
java数组中删除重复元素
2012-02-01 17:30 1620@Test public void sort(){ ... -
could not initialize proxy - no Session
2012-01-10 18:39 1519当代码一调用findUser方法当运行session.load ... -
解决 Module 'null' not found.异常问题
2012-01-05 18:26 1272开发中出现 Module 'null' not found. ... -
严重: Error filterStart
2012-01-04 16:25 1462今天使用 Struts2+Spring2.5+Hiber ... -
Could not open JPA EntityManager for transaction
2011-12-31 16:41 17808Spring2.5+JPA+Struts1.3 整合开发出现了 ... -
Enum 枚举类型
2011-12-22 09:48 1012Enum 枚举类型 enum 关键字用于声明枚举,即一种由一 ...
相关推荐
Java发送电子邮件是一个常见的任务,尤其在自动化通知、报表发送或者用户验证等场景中。下面将详细解释如何使用Java来发送邮件,并提供相关的知识点。 首先,Java通过JavaMail API提供了发送邮件的功能。JavaMail ...
java发送邮件工具类,用于java程序实现邮件的发送功能
本文将详细讲解如何使用Java发送邮件,并着重介绍消息格式化的概念及其重要性。 首先,发送邮件的核心类是JavaMail API提供的`javax.mail`包中的`Session`, `Message`, `Transport`等类。为了发送邮件,我们需要...
描述中提到的“java发送邮件所需要的包”即是指JavaMail API,它包含了一系列的类和接口,例如`javax.mail.Session`,它是邮件会话对象,用于配置邮件服务器的连接参数;`javax.mail.Transport`,用于发送邮件;`...
Java发送邮件功能是Java开发中常见的一项任务,它允许开发者通过编程的方式实现电子邮件的发送,包括正文内容、附件以及抄送等高级功能。在Java中,我们主要利用JavaMail API来实现这一目标。 JavaMail API是一个...
java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个java发送邮件jar包2个...
Java发送邮件是Java编程中的一项常见任务,尤其在企业级应用和自动化通知系统中非常普遍。本项目基于Maven构建,但如果你不使用Maven,你需要手动添加以下三个关键的JAR包:`mail.jar`,`commons-email-X.X.jar`,...
Java发送邮件是一个常见的任务,尤其在自动化通知、报表发送或者用户验证等场景中。下面将详细解释这个过程,包括SMTP(Simple Mail Transfer Protocol)的工作原理、JavaMail API的使用以及可能遇到的问题及其解决...
总的来说,Java发送邮件涉及到了网络通信、邮件协议(如SMTP)、JavaMail API的使用,以及可能的认证机制。理解这些知识点对于实现一个稳定的邮件发送功能至关重要。在实际操作时,确保正确配置邮件服务信息,并对...
本文将详细讲解如何使用Java发送邮件,包括所需的库、基本概念以及实际示例代码。 首先,JavaMail API是Java平台用于处理邮件服务的核心库。要发送邮件,你需要在项目中引入JavaMail的依赖。如果你使用的是Maven,...
Java发送邮件是软件开发中常见的需求,特别是在自动化通知、用户验证和客户服务等方面。在这个主题下,我们将探讨三种Java实现邮件发送的方式,以及如何通过提供的代码和参考资料进行实践。 首先,让我们了解一下...
Java发送邮件是一个常见的任务,尤其在自动化通知、报表发送或者用户验证等场景中。要实现这个功能,开发者通常需要引入一些特定的库,也就是我们所说的jar包。在"java发送邮件所需jar包.zip"这个压缩文件中,很可能...
本示例“java发送邮件Demo”旨在教你如何利用JavaMail API实现这个功能。JavaMail API是一个开源库,允许开发者通过SMTP(简单邮件传输协议)发送、接收和管理邮件。 首先,确保在项目中引入JavaMail API的相关依赖...
JavaMail SDK是Java发送邮件的核心工具,通过配置Session,创建并设置Message,以及使用Transport发送邮件,开发者可以轻松地在Java应用中实现邮件功能。同时,JavaMail还提供了丰富的功能,如HTML邮件、附件、抄送...
Java发送邮件是一个常见的任务,尤其在自动化通知、订阅服务或者数据传输中。在这个"java发送邮件完整程序"中,我们将会探讨如何使用Java语言来构建一个邮件发送功能,包括所需的库、步骤以及关键代码片段。 首先,...
本示例主要关注如何使用Java发送邮件,并结合`Mail.jar`库来实现这一功能。`Mail.jar`通常包含了JavaMail API,这是一个用于处理邮件的开源库。 首先,我们需要在项目中引入JavaMail API的相关依赖。如果是在Maven...
在Java编程语言中,发送邮件是一项常见的任务,尤其在开发Web应用、自动化通知或系统集成时。...Java发送邮件的功能十分强大,可以根据需求进行各种定制。通过学习和实践,你可以轻松地在Java应用中实现邮件服务功能。
Java发送邮件功能主要依赖于两个库,即javax.mail.jar和activation.jar。这两个JAR文件包含了JavaMail API,它是Java平台中用于发送和接收电子邮件的标准API。让我们深入了解一下这两个库及其在Java邮件处理中的作用...
使用java发送邮件的方法,直接可以拿来用,最近找了个例子,稍微整理了一下