package test;
import java.util.Date;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.SendFailedException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class TestMail {
public class Email_Autherticator extends Authenticator {
String username = "userFrom";
String password = "pwd";
public Email_Autherticator() {
super();
}
public Email_Autherticator(String user, String pwd) {
super();
username = user;
password = pwd;
}
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
}
private String host = "192.168.0.177";
//private String host = "smtp.126.com";
private String mail_head_name = "this is head of this mail";
private String mail_head_value = "this is head of this mail";
private String mail_to = "userTo@test.com";
private String mail_from = "userFrom@test.com";
private String mail_subject = "this is the subject of this test mail";
private String mail_body = "this is mail_body of this test mail";
private String personalName = "personalName";
public void sendMail() throws SendFailedException {
try {
Properties props = new Properties();// 获取系统环境
Authenticator auth = new Email_Autherticator();// 进行邮件服务用户认证
props.put("mail.smtp.host", host);
props.put("mail.smtp.auth", "true");
System.out.println(props);
Session session = Session.getDefaultInstance(props, auth);
// 设置session,和邮件服务器进行通讯
MimeMessage message = new MimeMessage(session);
message.setContent("Hello", "text/plain");// 设置邮件格式
message.setSubject(mail_subject);// 设置邮件主题
message.setText(mail_body);// 设置邮件内容
message.setHeader(mail_head_name, mail_head_value);// 设置邮件标题
message.setSentDate(new Date());// 设置邮件发送时期
Address address = new InternetAddress(mail_from, personalName);
message.setFrom(address);// 设置邮件发送者的地址
Address toaddress = new InternetAddress(mail_to);// 设置邮件接收者的地址
message.addRecipient(Message.RecipientType.TO, toaddress);
System.out.println(message);
Transport.send(message);
System.out.println("Send Mail Ok!");
} catch (Exception e) {
e.printStackTrace();
}
// return flag;
}
public static void main(String[] args) throws SendFailedException{
TestMail m = new TestMail();
m.sendMail();
}
}
分享到:
相关推荐
以下是一个基于`commons-email-1.1`库的Java发邮件实例: 首先,确保你的项目已经正确地引入了`commons-email`库。这通常通过Maven或Gradle的依赖管理来完成。如果你使用的是Maven,可以在`pom.xml`文件中添加以下...
这个例子代码将演示如何在Java环境中利用`commons-email-1.0.jar`库来发送带有附件的邮件。Apache Commons Email库提供了丰富的功能,简化了邮件发送过程。 首先,你需要在项目中引入`commons-email-1.0.jar`库。这...
以上是一个基本的JavaMail发送邮件的例子,实际应用中可能还需要处理更多复杂情况,比如添加附件、使用SSL/TLS加密连接等。例如,要添加附件,可以使用Multipart对象: ```java MimeBodyPart attachmentPart = new ...
这个“java发送邮件例子及jar包”很可能是包含了一个示例程序和必要的JavaMail API库。在这个压缩包中,"email"可能指的是一个包含Java源代码的文件或者一个类,用于演示如何使用JavaMail API发送邮件。 JavaMail ...
在Java编程语言中,发送...总的来说,Java邮件发送是一个实用且基础的技能,理解其工作原理和实现方式对提升开发者在Web应用开发中的能力大有裨益。通过学习和实践,我们可以轻松地实现在各种场景下的邮件通信功能。
Java邮件发送是一个常见的任务,特别是在企业级应用中用于发送通知、确认信息或自动通信。Apache Commons Email库是Java中一个强大的工具,它简化了构建和发送电子邮件的过程。在这个例子中,我们将深入探讨如何使用...
然后,使用`MimeMessage`类创建邮件对象,设置发件人、收件人、主题和邮件内容。如果需要添加附件,可以创建`MimeBodyPart`,添加到`MimeMultipart`对象中,再将`MimeMultipart`设置为邮件的内容。最后,通过`...
以下是一个简单的Java邮件发送示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class JavaMailDemo { public static void main(String[] args) { // 配置邮件会话属性 ...
在这个例子中,我们首先设置邮件服务器的属性,包括SMTP主机地址、端口、是否需要身份验证以及是否启用STARTTLS加密。然后,创建一个`Session`对象,用于管理邮件会话,并通过`Authenticator`提供登录凭据。接着,...
Java邮件发送功能是Java开发中常见的一项任务,尤其在企业级应用中,它常用于发送通知、报告或者附件。在Java中,我们可以使用JavaMail API来实现邮件的发送,包括带有附件的功能。以下是对这个主题的详细解释: 一...
使用java发送邮件的方法,直接可以拿来用,最近找了个例子,稍微整理了一下
4. **MailSenderInfo.java**:这个类可能用于封装邮件发送的相关信息,如发件人邮箱、密码、SMTP服务器地址、端口等。这样可以将敏感信息和邮件发送逻辑分开,提高代码的可维护性和安全性。 5. **Test.java**:这...
在Java编程中,发送带有附件的邮件是一项常见的任务,尤其对于自动化报告或者系统通知非常有用。以下是如何利用Java实现这一功能的详细步骤和关键知识点: 首先,你需要配置邮件发送的相关属性,这通常通过一个...
Java Web定时器主要指的是在Java Web应用程序中实现定时任务的功能,这在许多业务场景中都是必要的,例如数据备份、报表生成、邮件发送等。在Java中,我们可以利用内置的`java.util.Timer`类或者Spring框架的`@...
总之,“多线程发邮件”利用了Java的多线程和并发特性,通过ExecutorService和Callable接口实现了邮件发送的并行化,提高了效率。同时,使用线程池可以更好地管理资源,避免频繁的线程创建和销毁,从而优化系统性能...
在这个例子中,我们将使用`java.net.Socket`类来建立与SMTP服务器之间的连接。在实例化`Socket`对象时,需要指定两个参数:服务器地址和端口号。 ```java Socket socket = new Socket("smtp.example.com", 25); ```...
2. **创建Message对象**:使用`MimeMessage`类实例化一个邮件消息,设置发件人、收件人、主题和正文。 ```java MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress("from@...
3. **Java代码实现**: `Java发邮件代码.java`文件包含了一个Java类,用于编写和执行发送邮件的逻辑。主要涉及以下步骤: - 导入必要的JavaMail API包,例如`javax.mail`, `javax.mail.internet`等。 - 创建...
在这个例子中,我们首先配置了邮件服务器的属性,包括启用SMTP身份验证(`mail.smtp.auth`)和启动TLS加密(`mail.smtp.starttls.enable`)。然后,我们创建了一个`Session`对象,用于管理与邮件服务器的通信,并...
让我们深入了解一下这两个库及其在Java邮件处理中的作用。 首先,`javax.mail.jar`是JavaMail的核心库,它提供了邮件服务的基本接口和类。这个库包含了一系列的接口和类,如`Session`,`Message`,`Store`,`Folder...