public void send() {
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.163.com"); //指定SMTP服务器
props.put("mail.smtp.auth", "true"); //指定是否需要SMTP验证
try {
Session mailSession = Session.getInstance(props, null);
// mailSession.setDebug(true); //是否在控制台显示debug信息
MimeMessage message = new MimeMessage(mailSession);
message.setFrom(new InternetAddress("liyaotttt@163.com")); //发件人
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("aaaaabbbbb@163.com"));//邮件接收人
message.setSubject("日志"); //邮件主题
// message.setText(this.readConfig()); //邮件内容 如果不需要添加附件此项不需要注释掉
//设置文件内容 如果不需要添加附件 一直到这行message.setContent(mm); 可以注释掉
Multipart mm=new MimeMultipart();
BodyPart mdp=new MimeBodyPart();
mdp.setContent("请看附件","text/plain;charset=UTF-8");//设置邮件内容
mm.addBodyPart(mdp);
//设置信件的附件
FileDataSource fds;
String str[]=this.getFilelist(filename); //这是一个存放文件名的数组
for(int i=0;i<str.length;i++){
mdp=new MimeBodyPart();
fds=new FileDataSource(fileaddress+matchingsign+str[i]); //文件路径 比如 f:/test/aaa.txt
DataHandler dh=new DataHandler(fds);
mdp.setFileName((MimeUtility.encodeText(str[i], "UTF-8", "B")));
mdp.setDataHandler(dh);
mm.addBodyPart(mdp);
}
// mdp.setText("");
message.setContent(mm);
message.saveChanges();
Transport transport = mailSession.getTransport("smtp");
transport.connect("smtp.163.com", "username", "mailpwd");//服务器地址,邮箱用户名,邮箱地址
transport.sendMessage(message, message.getAllRecipients());
transport.close();
} catch (Exception e) {
System.out.println(e);
}
}
分享到:
相关推荐
javaMail
本教程将详细讲解如何使用 JavaMail 实现邮件发送功能,包括支持多个接收人、抄送人以及添加多个附件。 首先,确保你已经添加了 JavaMail 的依赖库到你的项目中。如果是 Maven 项目,可以在 pom.xml 文件中添加以下...
在这个场景下,我们讨论的是一个使用JSP和Servlet实现的邮件发送系统,该系统具备发送带有多个附件的功能。这个系统可能基于JavaMail API来实现邮件的发送,而JavaMail是一个强大的开源库,可以处理复杂的邮件服务...
下面将详细解释如何利用JavaMail发送带有附件的邮件。 首先,你需要导入以下关键的JavaMail和Java Activation Framework (JAF) 类: ```java import javax.mail.*; import javax.mail.internet.*; import javax....
本资源是一个集合发送图片,附件,内容,HTML等得JAVAMAIL代码,并且可以同时发送多个附件多个图片,只需填充VO类,即可直接调用并发送邮件,例子已经写好,只要填充上必要值即可,经163,qq,sina测试没有问题,有...
本资源是一个集合发送图片,附件,内容,HTML等得JAVAMAIL代码,并且可以同时发送多个附件多个图片,只需填充VO类,即可直接调用并发送邮件,例子已经写好,只要填充上必要值即可,经163,qq,sina测试没有问题,有...
这个标题"JavaMail发送邮件(文本、html、附件)"涵盖了使用JavaMail API发送不同格式邮件的核心功能。下面将详细介绍如何利用JavaMail发送文本、HTML和包含附件的邮件,以及在实际应用中需要注意的配置步骤。 1. *...
`MimeBodyPart`用于存储附件内容,而`MimeMultipart`用于组合多个`MimeBodyPart`。 ```java MimeBodyPart messageBodyPart = new MimeBodyPart(); messageBodyPart.setText("请查看附件"); Multipart multipart = ...
用JAVAMAIL发邮件(含附件),. TXT用JAVAMAIL发邮件(含附件),.TXT
以上就是使用JavaMail发送带附件的邮件的基本流程。需要注意的是,实际应用中可能需要处理更多复杂情况,例如错误处理、SSL/TLS加密连接、多部分邮件(包含HTML内容和文本内容)等。同时,确保你有正确的SMTP服务器...
通过以上步骤,你就可以利用 JavaMail 实现功能完备的邮件发送了,包括向多个人发送邮件、设置抄送和密送,以及添加多个附件。注意,实际使用时,你需要根据你的邮件服务提供商调整相应的配置参数,例如对于其他邮箱...
在 MailInfo 类中,我们定义了多个成员变量,用于存储邮件的各种信息。这些成员变量包括邮件服务器的主机名和端口号、邮件发送者的地址、邮件接收者的地址、邮件主题、邮件内容、邮件附件等。我们还定义了相应的 ...
最后,虽然这个例子只允许一次发送一个附件,但通过创建多个 `MimeBodyPart` 对象和一个 `MimeMultipart`,你可以轻松地添加多个附件。只需在循环中重复上述过程,将每个附件添加到 `Multipart`,然后设置 `...
`MimeMultipart`则允许我们组合多个`MimeBodyPart`,形成一个多部分的邮件。 以下是创建附件的基本步骤: 1. 创建一个`MimeMessage`实例,设置发件人、收件人、主题等信息。 2. 创建`MimeMultipart`对象,这将是...
综上所述,通过JavaMail API发送带有附件的邮件涉及到多个环节的操作,包括但不限于邮件验证、邮件信息配置、邮件创建及发送等。掌握这些基本流程对于Java开发者来说是非常重要的,能够帮助他们更高效地处理邮件发送...
这个“javamail发送邮件.zip”压缩包显然包含了一个示例项目,演示如何使用JavaMail API发送包含正文文本、图片以及附件的邮件。以下是对这个主题的详细解释: 1. **JavaMail API**: JavaMail API 是一组接口和类...
`MimeMultipart`类允许我们组合多个邮件部分,包括文本和附件。 4. **处理中文内容**:由于邮件可能包含中文字符,我们需要确保所有字符串都正确地编码为UTF-8。JavaMail API提供了相应的设置,可以避免乱码问题。 ...
JavaMail 是一个开源的Java库,它为...通过扩展,你可以实现更复杂的功能,如发送HTML邮件、添加多个收件人、抄送人和密送人,以及发送带有附件的邮件。了解这些基本概念后,你可以根据需要调整代码以满足特定的需求。
可以添加多个接收者,包括抄送和密送。 4. 使用`Transport`类的`send()`方法将`MimeMessage`发送出去。 在Struts2框架中集成JavaMail,你需要在Action类中编写发送邮件的方法,并在需要发送邮件的事件中调用。...