发纯文本的邮件
首先下载commons-email-1.1.jar、mail.jar和activation.jar(它们可以从sun的网站上下载,从下载的javamail和jaf中找到)。
(一)使用javax.mail.*
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/**
* @description
* @author lyf
* @createTime Jul 28, 2011
* @version 1.1.1.1
*/
public class SendTextMail {
String SMTPHost="";//SMTP服务器
String user="";//登录SMTP服务器的账号
String passwd;
String from="";//发件人邮箱
String to="";//收件人邮箱
String subject="";//邮件标题
String content="";//邮件内容
public SendTextMail()
{
}
/**
* 发送邮件
* @createTime Jul 28, 2011
*/
public void sendMail()
{
Properties props=new Properties();
props.put("mail.smtp.host", SMTPHost);
props.put("mail.smtp.auth", "true");
try {
SmtpAuth auth=new SmtpAuth();
auth.setAccount(user, passwd);
//create a Session
Session mailSession=Session.getDefaultInstance(props,auth);
mailSession.setDebug(true);
//create a Message Object
Message message=new MimeMessage(mailSession);
//sender
message.setFrom(new InternetAddress(from));
//getter
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
//subject
message.setSubject(subject);
//set the content
message.setText(content);
//send time
message.setSentDate(new Date());
//priority 1:urgency 2:general 3:slow
message.setHeader("X-Priority", "1");
message.saveChanges();
//create a Transport Object
Transport transport=mailSession.getTransport("smtp");
//connect to SMTP Server
transport.connect(SMTPHost, user, passwd);
//sendMail
transport.sendMessage(message, message.getAllRecipients());
} catch (Exception e) {
e.printStackTrace();
}
}
static class SmtpAuth extends Authenticator
{
String user,passwd;
//setting the user information
void setAccount(String user,String passwd)
{
this.user=user;
this.passwd=passwd;
}
protected PasswordAuthentication getPasswordAuthentication()
{
return (new PasswordAuthentication(user,passwd));
}
}
/**
* @return the sMTPHost
*/
public String getSMTPHost() {
return SMTPHost;
}
/**
* @param host the sMTPHost to set
*/
public void setSMTPHost(String host) {
SMTPHost = host;
}
/**
* @return the user
*/
public String getUser() {
return user;
}
/**
* @param user the user to set
*/
public void setUser(String user) {
this.user = user;
}
/**
* @return the from
*/
public String getFrom() {
return from;
}
/**
* @param from the from to set
*/
public void setFrom(String from) {
this.from = from;
}
/**
* @return the to
*/
public String getTo() {
return to;
}
/**
* @param to the to to set
*/
public void setTo(String to) {
this.to = to;
}
/**
* @return the subject
*/
public String getSubject() {
return subject;
}
/**
* @param subject the subject to set
*/
public void setSubject(String subject) {
try {
subject=new String(subject.getBytes("ISO8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.subject = subject;
}
/**
* @return the content
*/
public String getContent() {
return content;
}
/**
* @param content the content to set
*/
public void setContent(String content) {
try {
content=new String(content.getBytes("ISO8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.content = content;
}
/**
* @return the passwd
*/
public String getPasswd() {
return passwd;
}
/**
* @param passwd the passwd to set
*/
public void setPasswd(String passwd) {
this.passwd = passwd;
}
}
(二)使用org.apache.commons.mail.*(此方法比方法一简单很多)
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
public class Send
{
private String SMTPHost="";//SMTP服务器
private String user="";//登录SMTP服务器的账号
private String passwd;
private String from="";//发件人邮箱
private String to="";//收件人邮箱
private String subject="";//邮件标题
private String content="";//邮件内容
public Send(String host, String user, String passwd,String to, String subject, String content) {
SMTPHost = host;
this.user = user;
this.passwd = passwd;
this.from = user;
this.to = to;
this.subject = subject;
this.content = content;
}
public static void main(String[] args)
{
Send send=new Send("smtp.163.com","****@163.com","******","**email_address**","","");
send.setSubject("注册成功!!!");
send.setContent("您好!!!您的注册已通过审核请注意查看!!!");
send.send();
}
public void send()
{
SimpleEmail email = new SimpleEmail();
email.setTLS(true);
email.setHostName(this.SMTPHost);
email.setAuthentication(this.user, this.passwd);
try
{
//to
email.addTo(this.to);
//from
email.setFrom(this.from);
//subject
email.setSubject(this.subject); //标题
//setting Charset
email.setCharset("UTF-8");
//content
email.setMsg(this.content);
//send
email.send();
System.out.println("发送完毕");
} catch (EmailException e) {
e.printStackTrace();
}
}
/**
* @return the sMTPHost
*/
public String getSMTPHost() {
return SMTPHost;
}
/**
* @param host the sMTPHost to set
*/
public void setSMTPHost(String host) {
SMTPHost = host;
}
/**
* @return the user
*/
public String getUser() {
return user;
}
/**
* @param user the user to set
*/
public void setUser(String user) {
this.user = user;
}
/**
* @return the passwd
*/
public String getPasswd() {
return passwd;
}
/**
* @param passwd the passwd to set
*/
public void setPasswd(String passwd) {
this.passwd = passwd;
}
/**
* @return the from
*/
public String getFrom() {
return from;
}
/**
* @param from the from to set
*/
public void setFrom(String from) {
this.from = from;
}
/**
* @return the to
*/
public String getTo() {
return to;
}
/**
* @param to the to to set
*/
public void setTo(String to) {
this.to = to;
}
/**
* @return the subject
*/
public String getSubject() {
return subject;
}
/**
* @param subject the subject to set
*/
public void setSubject(String subject) {
this.subject = subject;
}
/**
* @return the content
*/
public String getContent() {
return content;
}
/**
* @param content the content to set
*/
public void setContent(String content) {
this.content = content;
}
}
另外还有发送html的邮件和包含附件的邮件,在此只谈一下发纯文本的邮件
分享到:
相关推荐
2. **创建邮件消息(Message)**:使用`MimeMessage`类创建邮件实例。我们可以设置邮件的发件人、收件人、抄送人、密送人、主题和正文。如果是HTML格式的邮件,可以使用`MimeBodyPart`和`Multipart`类来构造复杂的...
以下是一个基本的Java发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class EmailSender { public static void main(String[] args) { // 配置邮件会话参数 ...
总的来说,Java发送邮件涉及到了网络通信、邮件协议(如SMTP)、JavaMail API的使用,以及可能的认证机制。理解这些知识点对于实现一个稳定的邮件发送功能至关重要。在实际操作时,确保正确配置邮件服务信息,并对...
下面是一个简单的Java发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class EmailSender { public static void main(String[] args) { // 设置邮件服务器属性 ...
Java发送邮件是软件开发中常见的功能,特别是在自动化通知、用户注册验证或客户服务中。Java Mail API 是Java平台上的一个标准库,它提供了处理电子邮件的工具,包括创建、发送和接收邮件。在这个实例中,我们将深入...
在Java编程中,发送电子邮件是一项常见的任务,尤其在自动化通知、数据报告或者用户验证等场景中。本实例将深入探讨如何使用JavaMail API来实现这一功能。JavaMail API是一个开源库,它允许开发者通过Java程序发送和...
教如何大家使用java发送邮件的实例,一看就会,也可以直接拿来用
本实例完整的实现了java发送邮件的功能,需要大家下载下来将自己的用户名和密码等替换,替换的文件在项目中的email.properties文件中,具体详情请参见博文:...
在Java编程中,发送电子邮件是一项常见的任务,尤其在自动化通知、数据报告或用户验证场景下。本实例45聚焦于使用SMTP(Simple Mail Transfer Protocol)协议来实现这一功能。SMTP是互联网标准,用于在邮件服务器...
一个独立的java 接收邮件实例,平时java发邮件这块应该说是资源都比较丰富了。但收这块比较少,所以就整合了一下相关资源。
3. **使用Java发送邮件的基本步骤** - 引入依赖:在项目中添加`mailapi.jar`和`smtp.jar`,这两个库文件包含了发送邮件所需的所有类和接口。 - 创建Properties对象:设置SMTP服务器的属性,如主机名、端口、认证...
在Java编程中,发送电子邮件是一项常见的任务,尤其在自动化通知、数据报告或者用户验证等场景中。本实例将深入探讨如何使用`mail.jar`和`activation-1.1.jar`这两个库来实现邮件发送功能。这两个JAR文件是JavaMail ...
在这个实例中,我们将深入探讨如何使用Java Mail API来发送邮件,特别是涉及中文处理和HTML格式的邮件。 首先,我们看到有两个库文件:mail.jar 和 commons-email-1.0.jar。mail.jar 包含了Java Mail的核心组件,...
以下是一个基于`commons-email-1.1`库的Java发邮件实例: 首先,确保你的项目已经正确地引入了`commons-email`库。这通常通过Maven或Gradle的依赖管理来完成。如果你使用的是Maven,可以在`pom.xml`文件中添加以下...
本文将详细讲解如何使用Java发送邮件,并着重介绍消息格式化的概念及其重要性。 首先,发送邮件的核心类是JavaMail API提供的`javax.mail`包中的`Session`, `Message`, `Transport`等类。为了发送邮件,我们需要...
使用`MimeMessage`的`setFrom()`、`setRecipient()`、`setSubject()`和`setSentDate()`方法分别设置发件人、收件人、邮件主题和发送时间。 3. **创建Multipart对象**: HTML邮件通常包含多个部分,比如文本和图片...
Java发送邮件是编程中常见的一种任务,特别是在自动化通知、服务端消息传递等方面有着广泛的应用。在Java中,我们可以使用JavaMail API来实现邮件的发送功能。这个实例是关于如何使用163邮箱作为代理来发送邮件的...
Java发送邮件是一个常见的任务,尤其在自动化通知、订阅服务或者数据传输中。在这个"java发送邮件完整程序"中,我们将会探讨如何使用Java语言来构建一个邮件发送功能,包括所需的库、步骤以及关键代码片段。 首先,...
本文将基于提供的“java发送邮件_实例.doc”文件,深入探讨Java发送邮件的核心技术和实践方法。 #### Mail.jar包的重要性 首先,成功发送邮件的关键之一是下载并正确配置`Mail.jar`包。`Mail.jar`是JavaMail API的...