`
javatgo
  • 浏览: 1178972 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

javaMail 发送邮件成功例子[转贴]

阅读更多

一个通过JSP,JAVABEAN组合成功发送邮件的例子;需要的包有;mail.jar ,activation.jar;
java.sun.com中有下载的;
第一:通过163.com发送邮件时要验证用户,在这我们创建一个JAVABEAN 继承Authenticator类;
package zh;

/**
* @author Administrator
*
* To change the template for this generated type comment go to
* Window>Preferences>Java>Code Generation>Code and Comments
*/
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
public class MyAuth extends Authenticator
{
private String userName = "";
private String password = "";
private PasswordAuthentication pass = null;
public MyAuth(String userName,String password)
{
pass = new PasswordAuthentication(userName,password);
}

public PasswordAuthentication getPasswordAuthentication()
{
return pass;
}
public static void main(String[] args) {
}
}
通过用户名和用户密码来创建一个验证类的实例MyAuth;
MyAuth my = MyAuth(String userName,String password);//userName 用户邮箱名;passowrd :用户邮箱登录密码;例:userName = chshanhaojuan ,password = *******;

第二:
创建一个JSP页面来发送邮件;

<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="javax.activation.*"%>
<%@ page import="javax.naming.NamingException"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="javax.naming.Context"%>
<%@ page import="java.util.*"%>
<%@ page import="java.net.*"%>
<%@ page import="zh.MyAuth"%>

<html>
<head>
<title>OA</title>
</head>
<body topmargin=0 leftmargin=0 bgcolor="#ffffff">
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr height=24>
<td width=100% colspan=2 align="left" valign="middle" style="font-size:12px;padding-left:10px" background="images/bgcolor.gif">
<img src="images/handle.gif"> 公共信息->公共通讯簿
</td>
</tr>
<tr height=500>
<td width=60% align="left" valign="top">
<%
try{


Properties props = new Properties ();
/**在这mail.smtp.host 是邮件服务器的地址,比喻smtp.163.com 是163的接收邮件的服务器一般用smtp.163.com 就可以了但是,在我的AIX操作系统中不能解析这个地址,所以用220.181.12.16,
你也可以通过在dos底下用ping smtp.163.com 来得到一个IP地址
*/
props.put("mail.smtp.host", "220.181.12.16");

/**
mail.transport.protocol 是邮件传输协议中的接收协议;smtp既可;
*/
props.put("mail.transport.protocol","smtp");
/**
是否通过验证;一般为true 。false不能通过验证;
*/
props.put("mail.smtp.auth","true");
//mail.user 为用户邮箱登陆名;
props.put("mail.user", "chshanhaojuan");
//mail.password 邮箱登陆密码;
//props.put("mail.password", "******");

Session sendMailSession;
//用户验证使用的实例;
MyAuth auth = new MyAuth("chshanhaojuan","******");
//根据用户验证和当前属性来创建一个会话对象;
sendMailSession = Session.getDefaultInstance(props,auth);

sendMailSession.setDebug(false);

Transport tran = sendMailSession.getTransport("smtp");

tran.connect();

out.println(tran.isConnected());//测试连接是否成功;

Message mess = new MimeMessage(sendMailSession);//通过会话
//发送邮件的邮件地址;
mess.setFrom(new InternetAddress("chshanhaojuan@163.com"));
//接收邮件的邮件地址;
mess.setRecipient(Message.RecipientType.TO,new InternetAddress("xkg2001@163.com"));
//接收邮件的邮件地址;
//mess.addRecipient(Message.RecipientType.TO,new InternetAddress("chshanhaojuan@yahoo.com.cn"));
//发送的内容;
mess.setText("现在开始测试发送文件是否成功");
//发送时间;
mess.setSentDate(new Date());
//内容主题;
mess.setSubject("现在开始测试发送文件是否成功");

mess.saveChanges();

Address[] ad = new Address[1];
//接收邮件的地址;
ad[0] = new InternetAddress("xkg2001@163.com");
//发送邮件;
tran.sendMessage(mess,ad);

out.println("发送成功");

/*
//接收邮件;
Properties props = new Properties ();
//接收邮件邮件的服务器地址;mail.pop3.host ;220.181.12.113 同上面的一样;就不多说了;
props.put("mail.pop3.host", "220.181.12.113");

props.put("mail.store.protocol","pop3");//接收邮件的协议mail.store.protocol = pop3

props.put("mail.password", "chshanhaojuan");

props.put("mail.user", "******");//用户密码;

props.put("mail.port", "110"); //接收邮件服务器开的端口;163.com的端口是110;

Session sendMailSession;

sendMailSession = Session.getInstance(props,null);

Provider pro = sendMailSession.getProvider("pop3");
//默认的不能创建Store store = sendMailSession.getStore();创建不出来;为NULL异常;
Store store = sendMailSession.getStore(pro);
//先建立连接才能接收邮件;
store.connect("220.181.12.113",110,"chshanhaojuan","******");
//是否连接成功;
out.println(store.isConnected());
//打开收件箱,得到一个目录;
Folder folder = store.getFolder("INBOX");
//打开目录;只读方式打开;
folder.open(Folder.READ_ONLY);
从收件箱中提出邮件;
Message[] mess = folder.getMessages();
//底下应该看的懂了;
out.println(mess.length);

out.println(mess[0].getSubject());

out.println(mess[0].getSentDate().toString());

*/
}catch(NullPointerException e)

{

out.println(e.getMessage()+"异常");

}catch(Exception ex)

{

out.println(ex.getMessage()+"异常");

}

%>
</td>
</tr>
</table>
</body>
</html>

分享到:
评论

相关推荐

    用Java类实现JavaMail发送邮件的例子

    在这个例子中,我们将详细探讨如何使用JavaMail发送邮件,包括SMTP认证、添加附件以及发送HTML内容的邮件。 首先,为了使用JavaMail API,我们需要引入相应的库。在这个例子中,`javamail`和`JAF`(JavaBeans ...

    JavaMail发送邮件的例子

    下面我们将深入探讨JavaMail的基本概念、如何使用JavaMail发送邮件以及在Struts2框架中的实现方式。 JavaMail API主要包括以下组件: 1. `javax.mail.Session`:是JavaMail的核心,负责配置邮件服务器的信息,如...

    javaMail发送邮件 发送成功 收不到邮件 或收到邮件无主题无收件人乱码

    ### JavaMail发送邮件时遇到的问题及解决方法 在使用JavaMail进行邮件发送的过程中,可能会遇到以下几种常见问题:发送成功但收件方未收到邮件、邮件收到后无主题或无收件人信息以及邮件内容出现乱码等情况。本文将...

    使用JAVAMail代发邮件

    使用 JavaMail 库可以轻松地在 Java 应用程序中发送电子邮件。JavaMail 是一个 Java API,用于在 Java 应用程序中发送和接收电子邮件。它提供了一个抽象层,允许开发者使用不同的电子邮件协议,例如 SMTP、POP3 和 ...

    基于Javamail的邮件收发系统.zip

    基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件...

    javamail 发送邮件的例子(通过了qq 和gmail的邮箱)有SSL 安全的方式

    以下是使用JavaMail发送邮件的基本代码示例(简化版): ```java import javax.mail.*; import javax.mail.internet.*; public class EmailSender { public static void main(String[] args) { String from = ...

    用javaMail发送邮件

    下面是一个简单的JavaMail发送邮件的步骤: 1. **导入必要的库**:首先,在项目中导入`mail.jar`和`activation.jar`,确保编译和运行时能够访问到这些库。 2. **配置邮件会话**:创建一个`Properties`对象,设置...

    javaMail 发邮件

    这个例子展示了如何使用JavaMail发送带附件的邮件。需要注意的是,实际应用中应处理各种异常,确保邮件发送的健壮性。此外,如果你的邮件服务器需要身份验证,还需要提供一个Authenticator来处理登录信息。 总的来...

    Java类实现JavaMail发送邮件的例子.docx

    【JavaMail发送邮件】 JavaMail 是一个开源的Java库,用于处理电子邮件的发送、接收和其他相关操作。在Java中,我们可以使用JavaMail API来构建发送邮件的功能。以下是从提供的文件内容中提取的关键知识点: 1. **...

    JavaMail发送邮件(文本、html、附件)

    这个标题"JavaMail发送邮件(文本、html、附件)"涵盖了使用JavaMail API发送不同格式邮件的核心功能。下面将详细介绍如何利用JavaMail发送文本、HTML和包含附件的邮件,以及在实际应用中需要注意的配置步骤。 1. *...

    JavaMail发送电子邮件例子

    以下是一个简单的JavaMail发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class JavaMailTest { public static void main(String[] args) { String to = "recipient@...

    SpringUseJavaMailSendEmail(spring使用javamail发送邮件的例子)

    总结起来,Spring结合JavaMail API发送邮件的过程主要包括:配置`JavaMailSender` bean,创建邮件消息对象,设置邮件内容和属性,最后通过`JavaMailSender`实例发送邮件。通过这种方式,开发者可以轻松地在Spring...

    JavaMail发邮件原代码例子

    首先,要使用JavaMail发送邮件,你需要引入相关的依赖库,通常是`javax.mail`和`javax.mail-api`。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;com.sun.mail&lt;/groupId&gt; &lt;artifactId&gt;...

    java javamail 发送邮件 源代码 例子

    Java/javamail发送邮件是Java开发中常见的任务之一,它涉及到网络通信和电子邮件协议的知识。在Java中,JavaMail API提供了发送和接收电子邮件的功能。这个API遵循了JavaBeans Activation Framework (JAF) 和 ...

    javamail发送邮件例子

    JavaMail 是一个开源库,它提供了在 Java 应用程序中发送和接收电子邮件的功能。它扩展了 Java EE 的 javax.mail 包,提供了更强大的邮件处理能力。在标题和描述中提到的,我们将讨论如何使用 JavaMail 实现发送邮件...

    javamail发送邮件.zip

    这个“javamail发送邮件.zip”压缩包显然包含了一个示例项目,演示如何使用JavaMail API发送包含正文文本、图片以及附件的邮件。以下是对这个主题的详细解释: 1. **JavaMail API**: JavaMail API 是一组接口和类...

    利用JavaMail发送邮件的实例,可以直接运行

    8. **使用JavaMail发送HTML邮件**:通过设置`MimeMessage`的`setContent()`方法,可以发送包含HTML的邮件。 ```java message.setContent("&lt;h1&gt;HTML邮件标题&lt;/h1&gt;&lt;p&gt;这是HTML邮件正文。&lt;/p&gt;", "text/html;charset=...

    javamail实现邮箱与邮箱发送邮件

    下面是一个使用JavaMail发送邮件的详细示例代码: ```java import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; public class EmailSender { public ...

    javamail发送邮件实例

    JavaMail 是一个强大的开源库,用于在Java应用程序中发送...以上就是使用JavaMail发送邮件的详细过程,以及与文本编辑器KindEditor的集成方式。在开发过程中,记得根据具体需求调整和优化代码,以满足不同的业务场景。

    使用javaMail发邮件及收取邮箱未读邮件并标记为已读

    JavaMail 是一个强大的 Java 库,它允许开发者在应用程序中实现电子邮件的发送和接收功能。这个库支持多种邮件协议,如 SMTP(简单邮件传输协议)用于发送邮件,POP3(邮局协议)和 IMAP(因特网消息访问协议)用于...

Global site tag (gtag.js) - Google Analytics