http://blog.csdn.net/hfmbook/article/details/28275367
- import java.io.File;
- import java.util.Date;
- import java.util.Properties;
- import javax.activation.DataHandler;
- import javax.activation.DataSource;
- import javax.activation.FileDataSource;
- 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;
- /***
- * 创建日期:2014年6月3日
- * 作者:黄飞
- * 邮箱:834865081@qq.com
- * 博客地址:http://my.csdn.net/hfmbook
- * */
- public class AnnexMailService {
- public static boolean sendMail(String subject, String toMail,
- String content, String... files) {
- boolean isFlag = false;
- try {
- String smtpFromMail = "2603653389@qq.com"; //账号
- String pwd = "huangfei"; //密码
- int port = 25; //端口
- String host = "smtp.qq.com"; //端口
- Properties props = new Properties();
- props.put("mail.smtp.host", host);
- props.put("mail.smtp.auth", "true");
- Session session = Session.getDefaultInstance(props);
- session.setDebug(false);
- MimeMessage message = new MimeMessage(session);
- try {
- message.setFrom(new InternetAddress(smtpFromMail, "QQ邮件测试"));
- message.addRecipient(Message.RecipientType.TO,
- new InternetAddress(toMail));
- message.setSubject(subject);
- message.addHeader("charset", "UTF-8");
- /*添加正文内容*/
- Multipart multipart = new MimeMultipart();
- BodyPart contentPart = new MimeBodyPart();
- contentPart.setText(content);
- contentPart.setHeader("Content-Type", "text/html; charset=GBK");
- multipart.addBodyPart(contentPart);
- /*添加附件*/
- for (String file : files) {
- File usFile = new File(file);
- MimeBodyPart fileBody = new MimeBodyPart();
- DataSource source = new FileDataSource(file);
- fileBody.setDataHandler(new DataHandler(source));
- sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
- fileBody.setFileName("=?GBK?B?"
- + enc.encode(usFile.getName().getBytes()) + "?=");
- multipart.addBodyPart(fileBody);
- }
- message.setContent(multipart);
- message.setSentDate(new Date());
- message.saveChanges();
- Transport transport = session.getTransport("smtp");
- transport.connect(host, port, smtpFromMail, pwd);
- transport.sendMessage(message, message.getAllRecipients());
- transport.close();
- isFlag = true;
- } catch (Exception e) {
- isFlag = false;
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return isFlag;
- }
- public static void main(String[] args) {
- AnnexMailService.sendMail("你好", "834865081@qq.com", "朋友好久不见" ,
- "C:/中文.jpg");
- }
- }
相关推荐
Java邮件发送功能是Java开发中常见的一项...通过以上步骤和代码,你可以实现使用Java发送带有附件的邮件。不过,实际开发中,你可能还需要考虑其他因素,如使用模板引擎生成邮件内容、批量发送邮件、错误重试策略等。
根据提供的文件信息,本文将详细解释如何使用Java发送带有附件及多媒体内容(如图片)的电子邮件。本示例代码及说明适用于希望利用Java Mail API发送包含丰富格式内容邮件的开发者。 ### Java 发送带有附件及多媒体...
发送邮件到指定邮箱,可以携带附件,html,实现登录验证等功能。
现在,我们有了Excel数据的字节数组,可以将其作为邮件附件添加: ```java import javax.mail.util.ByteArrayDataSource; import javax.activation.DataSource; // 创建DataSource对象 DataSource dataSource = ...
java 发送邮件(带附件) 所有源码 里边 有jar包 有程序 解决: 1.发送邮件问题 2.发送图片问题 3.发送附件问题 4.发送html格式问题 哇 这东西 只要下载就直接可以运行.伙伴们赶紧微观吧.
带邮件发送邮件java实现简单简约适合新手
以下是一个简单的发送邮件带附件的Java代码示例: ```java ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); ExchangeCredentials credentials = new WebCredentials(...
总结一下,Java发送带有附件的邮件涉及到JavaMail API的使用,包括配置SMTP服务器、创建邮件对象、添加内容和附件,以及发送邮件等步骤。理解这些步骤和相关类的作用是实现此功能的关键。在处理不同类型的邮件时,...
Java代码实现发送邮件功能,支持发送带有附件的。需要直接拿走
Java发送电子邮件是一个常见的任务,尤其在自动化通知、报表发送或者用户验证等场景中。下面将详细解释如何使用Java来发送邮件,并提供相关的知识点。 首先,Java通过JavaMail API提供了发送邮件的功能。JavaMail ...
JavaMail邮件发送(带附件)
java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送
总结一下,Java发送带附件的邮件涉及到的主要知识点有: - 配置文件的读取与解析。 - JavaMail API的使用,包括`Session`、`MimeMessage`、`Multipart`、`MimeBodyPart`等类。 - SMTP协议的使用,包括身份验证和邮件...
在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在邮件中包含多媒体内容,如图片、文档、音频或视频文件等。 在JavaMail中,`...
根据提供的文件信息,我们可以提取并总结出以下关于Java发送邮件及附件的相关知识点: ### Java发送邮件及附件 #### 一、概述 在Java中发送邮件通常涉及到JavaMail API的使用,该API允许开发者通过简单的代码实现...
Java邮件发送技术是Java开发中一个实用且常见的功能,它允许开发者通过编程方式发送电子邮件,包括文本、HTML格式的正文以及附件。在本教程中,我们将深入探讨如何使用JavaMail API来实现邮件发送,特别是含附件的...
当有需求,需要把当天的报表文件发送给指定邮箱又不小生成多余的...实现过程是先将数据库里的数据,导出excel文件输出流中(注:不是直接生成文件),发送邮件时附件内容直接从前面excel文件输出流中获取,然后发送邮件
同时,为了提高代码的可维护性和测试性,可以考虑使用依赖注入来管理`Session`对象,以及使用策略模式处理不同类型的邮件内容(如纯文本、HTML或带附件的邮件)。 总结,通过JavaMail API和163邮箱的SMTP服务,我们...
在Java编程中,发送带有模板的邮件是一项常见的任务,尤其对于企业级应用来说,通过电子邮件进行通知、报告或客户服务是必不可少的。JavaMail API提供了一种标准的方式来处理邮件的发送,而结合模板技术,我们可以...
Java发送邮件是软件开发中常见的需求,特别是在自动化通知、用户验证和客户服务等方面。在这个主题下,我们将探讨三种Java实现邮件发送的方式,以及如何通过提供的代码和参考资料进行实践。 首先,让我们了解一下...