首先导入附件中的mail.jar和activation.jar
具体发邮件程序如下:
package mail;
import java.io.IOException;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message.RecipientType;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
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;
public class SendMailTest {
public static void main(String[] args) throws AddressException, MessagingException, IOException {
//method1();// 发送不带附件的邮件
method2();// 发送带附件的邮件
}
/**
* 发送邮件(不带附件)
* @throws MessagingException
* @throws AddressException
*/
public static void method1() throws AddressException, MessagingException{
// 1,得到session
Properties pro = new Properties();
pro.setProperty("mail.host", "smtp.163.com");
pro.setProperty("mail.smtp.auth", "true");
Authenticator auth = new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
// 此处设置发件人的用户名密码
return new PasswordAuthentication("w6037", "w687!");
}
};
Session session = Session.getInstance(pro, auth);
// 2,创建MimeMessage
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("w6037@163.com"));// 设置发件人
msg.setRecipients(RecipientType.TO, "262746@qq.com");// 设置收件人
msg.setRecipients(RecipientType.CC, "ww9037@163.com");// 设置抄送人
msg.setRecipients(RecipientType.BCC, "350048@qq.com");// 设置密送人
msg.setSubject("来自本天才的邮件");// 设置邮件标题
msg.setContent("这是一封测试邮件,请查收", "text/html;charset=UTF-8");// 设置邮件内容
// 发送邮件
Transport.send(msg);
}
/**
* 发送邮件(带附件)
* @throws AddressException
* @throws MessagingException
* @throws IOException
*/
public static void method2() throws AddressException, MessagingException, IOException {
// 1,得到session
Properties pro = new Properties();
pro.setProperty("mail.host", "smtp.163.com");
pro.setProperty("mail.smtp.auth", "true");
Authenticator auth = new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
// 设置发件人用户名密码
return new PasswordAuthentication("w6037", "w688!");
}
};
Session session = Session.getInstance(pro, auth);
// 2,创建MimeMessage
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("w6037@163.com"));// 设置发件人
msg.setRecipients(RecipientType.TO, "214746@qq.com");// 设置收件人
msg.setRecipients(RecipientType.CC, "w89037@163.com");// 设置抄送人
msg.setRecipients(RecipientType.BCC, "350048@qq.com");// 设置密送人
msg.setSubject("来自本天才的邮件");// 设置邮件标题
MimeMultipart list=new MimeMultipart();
MimeBodyPart content=new MimeBodyPart();
content.setContent("这是一封带附件的测试邮件","text/html;charset=UTF-8");//设置邮件内容
MimeBodyPart file=new MimeBodyPart();
file.attachFile("D:\\1.txt");//设置要上传附件
file.setFileName(MimeUtility.encodeText("欧巴刚那斯达.txt"));//在邮件中显示的附件名称,MimeUtility.encodeText用来处理中文乱码
list.addBodyPart(content);
list.addBodyPart(file);
msg.setContent(list);
// 发送邮件
Transport.send(msg);
}
}
分享到:
相关推荐
本篇文章将深入探讨如何使用Java实现邮件发送功能,主要基于`javax.mail`库,这是一个标准的Java邮件API。 首先,理解Java Mail API的工作原理至关重要。它提供了一组接口和类,用于处理邮件服务器上的邮件消息。...
`SimpleMailSender` 类可能包含了初始化邮件会话、设置发件人和收件人、创建邮件消息、以及实际发送邮件的逻辑。关键方法可能包括`send()` 和 `createMimeMessage()`,其中 `MimeMessage` 是JavaMail API中的一个类...
2. **创建邮件消息(Message)**:使用`MimeMessage`类创建邮件实例。我们可以设置邮件的发件人、收件人、抄送人、密送人、主题和正文。如果是HTML格式的邮件,可以使用`MimeBodyPart`和`Multipart`类来构造复杂的...
通过这个简单的实例和相关的库文件,开发者可以快速地集成邮件发送功能到Java应用程序中,无论是开发桌面应用还是Web服务,都能方便地实现邮件通信。确保正确配置SMTP服务器参数,并处理好异常,就能成功发送邮件了...
本文将详细介绍如何使用Java实现发送邮件的实例,并提供所需的库和步骤。 首先,JavaMail API是Java中用于处理邮件的核心库。在描述中提到的"jar包"很可能是JavaMail相关的依赖,例如`javax.mail`和`javax.mail-api...
以下是一个基于`commons-email-1.1`库的Java发邮件实例: 首先,确保你的项目已经正确地引入了`commons-email`库。这通常通过Maven或Gradle的依赖管理来完成。如果你使用的是Maven,可以在`pom.xml`文件中添加以下...
一个独立的java 接收邮件实例,平时java发邮件这块应该说是资源都比较丰富了。但收这块比较少,所以就整合了一下相关资源。
在这个实例中,我们将深入探讨如何使用Java Mail API发送邮件,以及在不同环境下(如SSH框架和Servlet)的应用。 首先,我们要了解Java Mail API的基本概念。JavaMail API是由Sun Microsystems开发的一套用于处理...
在这个实例中,我们将深入探讨如何使用Java Mail API来发送邮件,特别是涉及中文处理和HTML格式的邮件。 首先,我们看到有两个库文件:mail.jar 和 commons-email-1.0.jar。mail.jar 包含了Java Mail的核心组件,...
### Java邮件开发实例知识点 #### 一、Java邮件发送机制概览 在Java开发中,邮件功能是非常实用的一项技术,可以用于用户注册验证、找回密码等场景。本篇将通过一个具体的实例——“Java邮件开发实例”,来详细...
3. **创建Message对象**:使用Session对象创建一个Message实例,设置邮件的基本信息,如发件人、收件人、主题和正文。 ```java Message message = new MimeMessage(session); message.setFrom(new InternetAddress...
在创建 `MimeMessage` 时,需要指定发件人的邮箱地址,并将收件人、抄送人等信息设置到邮件消息中。 6. **群发邮件**: 群发邮件可以通过在 `MimeMessage` 中设置多个收件人和抄送人来实现。`InternetAddress` 类...
Java发送邮件是编程中常见的一种任务,特别是在自动化通知、服务端消息传递等方面有着广泛的应用。在Java中,我们可以使用JavaMail API来实现邮件的发送功能。这个实例是关于如何使用163邮箱作为代理来发送邮件的...
Java Web开发实例大全(提高卷)筛选、汇集了Java Web开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析...
接着,我们创建`Message`对象,设置发件人、收件人、主题和邮件正文。最后,通过`Transport.send(message)`发送邮件。 需要注意的是,不同的邮件服务提供商可能有不同的SMTP设置,例如Gmail、Yahoo或Outlook。在...
通过实践这个实例,你可以掌握Java编程中发送邮件的核心技术,这对于开发各种业务系统,如通知服务、自动化报告等都是非常重要的。同时,熟悉Apache James的配置和管理,也能帮助你更好地理解邮件服务器的运作机制。
Java手机与计算机互发彩信源码.rar Java手机游戏大富翁源代码+注释.rar Java手机短信项目源码.rar Java扫雷源码.rar Java生成自定义控件源代码.rar Java调色板面板源代码.rar Java跳棋(基于SWT).rar Java通讯录手机...
在Java编程语言中,发送邮件是一项常见的任务,尤其在企业级应用中,它用于通知、报表或者客户服务等。本文将详细讲解如何使用Java发送邮件,并着重介绍消息格式化的概念及其重要性。 首先,发送邮件的核心类是...
最后,`MailEntity.java`是邮件实体的类,它封装了邮件的所有信息,如发件人、收件人、主题、正文等。此外,它还可能包含一个或多个`AttachmentEntity`对象,以表示邮件的附件。 在实际开发中,确保正确处理异常,...