package com.hygj.mail;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.Message.RecipientType;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.hygj.test.SMTPAuthenticator;
/**
* <p>Title:</p>
* <p>Description:</p>
* <p>Copyright:Copyright(c)2009</p>
* <p>Company:华育国际教育集团-济南分校-软件工厂</p>
* <p>Created By:ZhangKe</p>
* <p>First Created:2009-6-5</p>
* @author: <a href="mailto:jasonyp@126.com">ZhangKe</a>
* @version: 1.0
*
*/
public class SMTPMail {
private String host = "";
private String username = "";
private String password = "";
private boolean auth = false;
private String from = "";
private String to="";
private String subject = "";
private String content = "";
public boolean sendMail(){
boolean isSend = false;
try {
//1.创建于SMTP服务器之间的会话
Properties properties = System.getProperties();
properties.put("mail.smtp.host",host);
properties.put("mail.smtp.auth",String.valueOf(auth));
SMTPAuthenticator authenticator = new SMTPAuthenticator(username,password);
Session session = Session.getDefaultInstance(properties,new Authenticator(){
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username,password);
}
});
session.setDebug(true);
//2.连接SMTP服务器
Transport sender = session.getTransport("smtp");
sender.connect();
//3.创建邮件内容
Message mymail = new MimeMessage(session);
mymail.setFrom(new InternetAddress(from,"JAVAMail"));
mymail.setRecipient(RecipientType.TO,new InternetAddress(to));
mymail.setSubject(subject);
mymail.setContent(content,"text/html;charset=gbk");
// mymail.setText(content);
//4.发送邮件
Transport.send(mymail);
isSend = true;
} catch (AddressException e) {
e.printStackTrace();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (MessagingException e) {
System.out.println(e.getMessage());
}
return isSend;
}
/**
* @param args
*/
public static void main(String[] args) {
SMTPMail mail = new SMTPMail();
mail.setHost("smtp.126.com");
mail.setUsername("g_anine");
mail.setPassword("qqqq,.");
mail.setAuth(true);
mail.setFrom("anine@126.com");
mail.setTo("asaaaa@126.com");
mail.setSubject("我的JavaMail测试邮件");
mail.setContent("我的第一封邮件!<a href=http://www.gohy.net>济南华育</a>");
mail.sendMail();
}
public boolean isAuth() {
return auth;
}
public void setAuth(boolean auth) {
this.auth = auth;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getHost() {
return host;
}
public void setHost(String host) {
this.host = host;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
分享到:
相关推荐
这个标题"JavaMail发送邮件(文本、html、附件)"涵盖了使用JavaMail API发送不同格式邮件的核心功能。下面将详细介绍如何利用JavaMail发送文本、HTML和包含附件的邮件,以及在实际应用中需要注意的配置步骤。 1. *...
### JavaMail发送邮件时遇到的问题及解决方法 在使用JavaMail进行邮件发送的过程中,可能会遇到以下几种常见问题:发送成功但收件方未收到邮件、邮件收到后无主题或无收件人信息以及邮件内容出现乱码等情况。本文将...
在使用JavaMail发送邮件前,你需要在项目中引入相关的依赖包。在描述中提到的"javamail"可能是指JavaMail的jar包,这是进行邮件操作的基础。确保你的项目已包含以下两个关键的JavaMail库: 1. `javax.mail-api.jar`...
这个“javamail发送邮件.zip”压缩包显然包含了一个示例项目,演示如何使用JavaMail API发送包含正文文本、图片以及附件的邮件。以下是对这个主题的详细解释: 1. **JavaMail API**: JavaMail API 是一组接口和类...
下面是一个简单的JavaMail发送邮件的步骤: 1. **导入必要的库**:首先,在项目中导入`mail.jar`和`activation.jar`,确保编译和运行时能够访问到这些库。 2. **配置邮件会话**:创建一个`Properties`对象,设置...
在这个例子中,我们将详细探讨如何使用JavaMail发送邮件,包括SMTP认证、添加附件以及发送HTML内容的邮件。 首先,为了使用JavaMail API,我们需要引入相应的库。在这个例子中,`javamail`和`JAF`(JavaBeans ...
8. **使用JavaMail发送HTML邮件**:通过设置`MimeMessage`的`setContent()`方法,可以发送包含HTML的邮件。 ```java message.setContent("<h1>HTML邮件标题</h1><p>这是HTML邮件正文。</p>", "text/html;charset=...
下面我们将深入探讨JavaMail的基本概念、如何使用JavaMail发送邮件以及在Struts2框架中的实现方式。 JavaMail API主要包括以下组件: 1. `javax.mail.Session`:是JavaMail的核心,负责配置邮件服务器的信息,如...
JavaMail 是一个强大的开源库,用于在Java应用程序中发送...以上就是使用JavaMail发送邮件的详细过程,以及与文本编辑器KindEditor的集成方式。在开发过程中,记得根据具体需求调整和优化代码,以满足不同的业务场景。
JavaMail API 是一个用于发送、接收电子邮件的标准接口集合,它支持多种协议(如 SMTP、IMAP 和 POP3),使得 Java 应用程序能够轻松地发送和接收电子邮件。 #### 二、发送 HTML 格式的邮件 在实际应用中,经常需要...
通过解析给定文件的标题、描述、标签及部分内容,我们可以深入探讨javamail发送与接收邮件的详细教程,以及如何利用JavaMail API实现邮件功能。 ### javamail发送、接收邮件 JavaMail API是由Sun Microsystems开发...
JavaMail 是一个开源的 Java 库,用于在 Java 应用程序中实现电子邮件的发送和接收。这个小程序可能包含了一套完整的类,可以帮助开发者快速构建邮件发送功能,无需从头开始编写所有必需的代码。 JavaMail 提供了对...
下面,我们将深入探讨使用JavaMail发送邮件的实例。 首先,确保你的项目中已经包含了JavaMail的相关依赖。通常,这可以通过在Maven或Gradle的构建文件中添加对应的依赖完成。例如,对于Maven,可以在pom.xml文件中...
这个“javaMail发送邮件依赖的jar包源码整理”提供了关于如何使用 JavaMail 发送邮件以及相关库的源代码,这对于理解其工作原理和自定义功能非常有帮助。 在JavaMail中,主要涉及以下几个核心组件: 1. **JavaMail...
这个“完整的javamail发送邮件源码”提供了一种直接可用的解决方案,帮助开发者快速集成邮件发送功能到他们的项目中。以下是对JavaMail核心知识点的详细解析: 1. JavaMail API:JavaMail API 是一组用于处理邮件的...
使用JavaMail发送邮件的基本步骤如下: 1. **导入依赖**: 首先,你需要将上述提到的JAR文件添加到项目的类路径中,确保Java程序可以访问这些库。 2. **配置属性**: 创建一个`Properties`对象,设置邮件服务器的...
javaMail
这个示例将详细介绍如何在Java应用程序中使用JavaMail发送邮件。 首先,我们需要引入JavaMail相关的依赖。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>com.sun.mail</groupId> ...
javamail发送邮件的简单实例