`
as11051105
  • 浏览: 60425 次
  • 性别: Icon_minigender_1
  • 来自: 贵阳
社区版块
存档分类
最新评论

用JavaMail发送邮件(含实例)

阅读更多
JavaMail是Sun发布的处理电子邮件的应用程序接口,它预置了一些最常用的邮件传送协议的实现方法,并且提供了很容易的方法去调用它们。JavaMail是Sun发布的应用程序接口,所以目前它还没有被JDK包含。因此你需要从Sun的官方网站上下载到JavaMail类文件包。除此之外还需要Sun的JAF(JavaBeans Activation Framework ),否则JavaMail将不能运行。
        核心JavaMail API 由七个类组成:Session 、Message 、Address 、Authenticator 、Transport 、Store 及 Folder ,它们都来自javax.mail 、即JavaMail API 顶级包。可以用这些类完成大量常见的电子邮件任务,包括发送消息、检索消息、删除消息、认证、回复消息、转发消息、管理附件、处理基于HTML文件格式的消息以及搜索或过滤邮件列表。
       测试邮件发送的源代码:

import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Properties; 
import java.util.Date; 
import javax.mail.*; 
import javax.mail.internet.*; 
/* 
*  测试用JavaMail发送电子邮件 
*/ 
public class SendMail { 
private String from; 
private String to; 
private String smtpServer; 
private String subject; 
private String content; 
private String username; 
private String password; 

/* 
  * 构造函数 
  */ 
public void mail(String smtpServer,String from,String to,String username,String password,String subject,String content) { 
  this.smtpServer = smtpServer; 
  this.from = from; 
  this.to = to; 
  this.username = username; 
  this.password = password; 
  this.subject = subject; 
  this.content = content; 
} 

public String getFrom() { 
  return from; 
} 
public void setFrom(String from) { 
  this.from = from; 
} 
public String getTo() { 
  return to; 
} 
public void setTo(String to) { 
  this.to = to; 
} 
public String getSmtpServer() { 
  return smtpServer; 
} 
public void setSmtpServer(String smtpServer) { 
  this.smtpServer = smtpServer; 
} 
public String getSubject() { 
  return subject; 
} 
public void setSubject(String subject) { 
  this.subject = subject; 
} 
public String getContent() { 
  return content; 
} 
public void setContent(String content) { 
  this.content = content; 
} 
public String getUsername() { 
  return username; 
} 
public void setUsername(String username) { 
  this.username = username; 
} 
public String getPassword() { 
  return password; 
} 
public void setPassword(String password) { 
  this.password = password; 
} 

public void send() { 
  Properties props = System.getProperties(); 
  props.put("mail.smtp.host", smtpServer); 
  props.put("mail.smtp.auth", "true");   
  /* 
   * Session: 邮件会话 
   * 使用Session类提供的getDefaultInstance()静态工厂方法获得一个默认的Session对象 
   */ 
  Session session = Session.getDefaultInstance(props,new PasswordAuthenticator(username, password)); 
  //信息对象 
  Message msg = new MimeMessage(session); 
  try { 
   msg.setFrom(new InternetAddress(from)); 
   msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false)); 
   msg.setSubject(subject); 
   msg.setText(content); 
   //发送邮件的时间 
   msg.setSentDate(new Date()); 
   //邮件的发送是由Transport来完成的 
   Transport.send(msg); 
  } catch (AddressException e) { 
   e.printStackTrace(); 
  } catch (MessagingException e) { 
   e.printStackTrace(); 
  } 
} 

public static void main(String[] argv) { 
  SendMail sendMail = new SendMail(); 
  //设置SMTP服务器地址    
  sendMail.setSmtpServer("smtp.sina.com"); 
  //发送方的邮件地址 
  sendMail.setFrom("[email=[ft=,2,]zhangxuey@sina.com]zhangxueyi@sina.com[/email]"); 
  //接收方的邮件地址 
  sendMail.setTo("[email=[ft=,2,]623064832@qq.com]623064832@qq.com[/email]"); 
  //发送方的邮件名称 
  sendMail.setUsername("[email=[ft=,2,]zhangxueyi@sina.com]zhangxueyi@sina.com[/email]"); 
  //发送方的邮箱密码(根据情况自己设定) 
  sendMail.setPassword("******"); 
  //邮件的主题 
  sendMail.setSubject("测试"); 
  //邮件的内容 
  sendMail.setContent("测试用JavaMail发送电子邮件!"); 
  sendMail.send(); 
} 
} 
/* 
* 密码验证类 PasswordAuthenticator 
* @param username:邮件地址 
* @param password:密码 
*/ 
class PasswordAuthenticator extends Authenticator { 
private String username; 
private String password; 
public PasswordAuthenticator(String username, String password) { 
  this.username = username; 
  this.password = password; 
}//构造方法 
protected PasswordAuthentication getPasswordAuthentication() { 
  return new PasswordAuthentication(username, password); 
} 
}
分享到:
评论

相关推荐

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

    6. **发送邮件**:使用`Transport`类的`send()`方法发送邮件。 ```java Transport.send(message); ``` 7. **添加附件**:如果需要发送附件,可以使用`Multipart`和`BodyPart`类。创建一个`MimeMultipart`对象,...

    javamail发送邮件实例

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

    javamail发送邮件的简单实例

    javamail发送邮件的简单实例

    javaMail发送邮件的实例与资料大全

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

    用javaMail发送邮件

    以上就是使用JavaMail发送邮件的基本过程。在实际开发中,可能还需要处理更多复杂情况,如SSL/TLS加密、HTML邮件、多部分消息等。JavaMail API提供了丰富的功能来应对这些需求,让开发者能够灵活地构建邮件系统。 ...

    javamail 发送邮件 实例

    下面,我们将深入探讨使用JavaMail发送邮件的实例。 首先,确保你的项目中已经包含了JavaMail的相关依赖。通常,这可以通过在Maven或Gradle的构建文件中添加对应的依赖完成。例如,对于Maven,可以在pom.xml文件中...

    JavaMail发送邮件的例子

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

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

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

    javamail发送邮件.zip

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

    Spring javaMail发送文本邮件实例

    导入到Myeclipse 即可运行 测试使用的是QQ邮箱 在application.xml中配置的发送邮箱 要到邮箱中设置 POP3/SMTP服务为开。项目不部署到tomcat后启动服务,然后运行test.java 就发送了,。绝对可以发送

    javamail邮件发送实例

    最后,使用Transport类发送邮件: ```java Transport.send(message); ``` 以上就是一个简单的JavaMail邮件发送实例。在实际开发中,你可能还需要处理异常、设置超时、支持多语言、使用模板等复杂情况。JavaMail ...

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

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

    javamail发送邮件小程序,类以及写好,只要放包,下载一个就可以

    `Transport.send(Message)` 方法是实际发送邮件的关键调用。 5. **Address**:`Address` 类族包括 `InternetAddress`,用于表示电子邮件地址。`InternetAddress` 支持解析和格式化电子邮件地址,并可以作为 `...

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

    这个“javaMail发送邮件依赖的jar包源码整理”提供了关于如何使用 JavaMail 发送邮件以及相关库的源代码,这对于理解其工作原理和自定义功能非常有帮助。 在JavaMail中,主要涉及以下几个核心组件: 1. **JavaMail...

    JAVA100例之实例47 使用javamail发送邮件

    总结来说,实例47主要涉及JavaMail API的使用,包括建立邮件会话、创建并设置邮件内容以及发送邮件的过程。通过这个例子,你可以学习到如何在Java程序中集成邮件功能,这对于任何需要自动化或交互式发送邮件的应用都...

    使用javamail发送邮件

    下面我们将详细探讨如何使用JavaMail发送邮件,以及涉及的关键知识点。 首先,要发送邮件,你需要配置一些必要的参数,包括邮箱账号、密码和SMTP服务器地址(SERVERHOST)。例如,如果你使用的是 Gmail 邮箱,SMTP ...

    javamail发送邮件(超链接返回web后台)

    在这个“javamail发送邮件(超链接返回web后台)”的示例中,我们主要关注的是如何使用 JavaMail 发送包含超链接的邮件,并且这个超链接可以返回到 Web 后台。 1. **JavaMail 基础** JavaMail API 提供了 `javax....

    用JavaMail发送邮件

    在给定的文件中,`MailExample.java`很可能是展示如何使用JavaMail发送邮件的示例代码。它可能包含以下步骤: 1. 创建`Properties`对象,设置邮件服务器的相关属性,如SMTP主机名、端口、是否使用SSL等。 2. 创建`...

    如何用javamail定时发送邮件

    创建一个方法来使用 JavaMail 发送邮件。这通常包括配置 SMTP 服务器信息,创建 `Session` 对象,以及构建 `MimeMessage` 实例。 ```java import javax.mail.*; import javax.mail.internet.*; public void ...

Global site tag (gtag.js) - Google Analytics