下面是全部的源代码:
SendMail.java
package com.dsh.javamail;
import java.util.Properties;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
/**
* 練習使用java mail發送電子郵件
* @author:DuanShiHui
* @company:oddTech
* @time:2011-12-1 下午12:35:43
*/
public class SendMail {
private String host = "smtp.163.com"; // 使用smtp服务器
private String user = "ly5423ems"; // 用户名
private String pwd = ""; // 密码
private String from = "test@163.com"; // 发件人地址
private String to = "test@qq.com"; // 收件人地址
private String subject = "java Mail郵件發送測試"; // 邮件标题
/**
* @param args
*/
public static void main(String[] args) {
SendMail sm=new SendMail();//實例化一個對象
sm.setAddress("test@163.com", "test@qq.com", "java Mail郵件發送測試","");
sm.sendToMail("這是我用來測試的,請不要回覆");
}
/**
* 設置有地址之類的信息
* @param from
* 發送者的地址
* @param to
* 接收者的地址
* @param subject
* 郵件主題
* @param pwd
* 發件人的郵箱密碼
*/
public void setAddress(String from, String to, String subject,String pwd){
this.from = from;
this.to = to;
this.subject = subject;
this.pwd=pwd;
}
/**
* 郵件的發送
* @param text
* 發送的內容
*/
public void sendToMail(String text){
Properties props = new Properties();
// 設置發送郵件的郵件服務器的屬性(這裡使用的是163的smtp服務器)
props.put("mail.smtp.host", host);
// 需要經過授權,也就是有用戶名和密碼的校驗,這樣才能通過驗證(一定要有這條)
props.put("mail.smtp.auth", "true");
// 用剛剛設置好的props對象構建一個session
Session session = Session.getDefaultInstance(props);
//這句話是爲了在發送過程中在控制台顯示發送郵件的過程
session.setDebug(true);
// 用session為參數定義消息對象
MimeMessage message = new MimeMessage(session);
try {
// 加載發件人地址
message.setFrom(new InternetAddress(from));
// 加載收件人地址
message.addRecipient(Message.RecipientType.TO, new InternetAddress(
to));
// 加載主題
message.setSubject(subject);
// 向multipart對象中添加郵件的各個部份內容,包括文本內容和附件
Multipart multipart = new MimeMultipart();
// 設置郵件的文本內容
BodyPart contentPart = new MimeBodyPart();
contentPart.setText(text);
multipart.addBodyPart(contentPart);
// 將multipart對象放到message中
message.setContent(multipart);
// 保存郵件
message.saveChanges();
// 發送郵件
Transport transport = session.getTransport("smtp");
// 鏈接服務器的郵箱
transport.connect(host, user, pwd);
//把郵件發送出去
transport.sendMessage(message, message.getAllRecipients());
transport.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
要想实现更加丰富的功能,请参照javaMail 的api文档
分享到:
相关推荐
JavaMail是一种在Java环境中处理电子邮件的标准API,它允许开发者通过编程方式发送、接收和操作邮件。...通过不断地练习和调试,你可以熟练掌握JavaMail的使用,从而在你的项目中实现各种复杂的邮件功能。
JavaMail通过`Transport`类与SMTP服务器进行交互,完成邮件的发送。可能需要使用SSL/TLS加密来确保安全。 5. **POP3/IMAP服务器**: POP3(邮局协议)和IMAP(Internet消息访问协议)用于接收邮件。JavaMail提供了`...
本篇文章将深入探讨如何使用Java SendMail进行邮件发送,包括必要的库介绍、配置步骤以及实际的代码示例。 JavaMail API是Java平台上的标准邮件处理API,它提供了丰富的接口和类来创建、发送、接收和管理邮件。为了...
第四部分是本书的重点,详尽地展示了如何利用JavaMail API进行邮件的发送和接收,包括处理附件和HTML邮件的具体步骤。这一部分通过实例代码演示了各种常见邮件操作的实现方式,为开发者提供了丰富的实战经验。 七、...
使用JavaMail API进行邮件操作涉及几个关键步骤: 1. **初始化会话**:创建一个新的`Session`实例,并配置相应的属性。 2. **创建消息**:使用`Message`类构建邮件对象。 3. **发送邮件**:通过`Transport`类发送...
使用模拟器或真实设备进行测试,确保邮件发送功能正常工作。同时,为了安全起见,避免在调试期间泄露真实账户信息,可以使用测试邮件账户。 总之,通过以上步骤,初学者可以在Android应用中实现邮件发送功能。这个...
《Java邮件开发详解》这本书深入浅出地讲解了如何使用JavaMail API进行邮件编程。源代码通常提供了实例和练习,帮助读者更好地理解和实践书中的理论知识。 JavaMail API是Java平台上的一个开源库,它允许开发者通过...
学习JavaMail API时,你需要理解上述概念,并通过编写实际代码来练习发送、接收和处理邮件。这包括设置SMTP服务器配置、创建和配置`Message`对象、处理邮件附件、使用`Transport`发送邮件,以及如何连接到邮箱读取...
在JavaMail中,你可以设置`Store`类型为`IMAP`来建立连接,然后使用`Folder`对象进行邮件操作,如打开、读取、移动和搜索。 使用JavaMail发送邮件,你需要配置`Properties`对象,指定邮件服务器的主机名、端口、...
这个项目主要练习使用JavaMail API来实现这一功能。JavaMail API是一个用于处理电子邮件的开源库,它允许开发者通过SMTP(简单邮件传输协议)发送邮件,接收邮件,并处理邮件中的MIME(多用途互联网邮件扩展)内容。...
本实例将聚焦于使用Java进行电子邮件的发送和接收,帮助你提升实际操作能力,通过练习来加深理解。 首先,Java提供了JavaMail API来处理电子邮件。JavaMail API是一套用于访问邮件服务器的库,支持SMTP(简单邮件...
这是一个发送电子邮件的Java应用程序"的项目,很可能是初学者尝试使用JavaMail API创建的第一个邮件发送程序,旨在学习和理解如何在Java中实现邮件功能。 JavaMail API提供了丰富的类和接口,例如`javax.mail....
邮件发送源码涉及JavaMail API,这是一个用于发送和接收电子邮件的Java库。学习者将了解如何配置SMTP服务器,创建和发送邮件,以及处理附件。这涵盖了网络通信和协议理解,如SMTP(简单邮件传输协议)。 这些案例...
5. 配置和使用JavaMail API发送邮件,如购物确认或订单详情。 6. 连接SQL Server 2005数据库,执行SQL操作以保存和读取数据。 通过这个项目,学习者不仅可以掌握JSP的基础知识,还能了解到如何与数据库交互,如何...
在这种情况下,我们可以利用JavaMail API来实现邮件发送,它允许我们在Android应用中直接处理邮件的发送过程,而无需依赖系统的邮件应用。本文将详细介绍如何在Android中通过JavaMail API发送邮件。 首先,我们需要...
然后,他们需要学习如何在代码中与数据库交互,以及如何使用JavaMail API发送邮件。这些经验将有助于他们进一步掌握Java开发技能。 7. **版本控制**:NetBeans也集成了版本控制系统,如Git,这对于团队协作和项目...