- 1)设置session等完成邮件基础设置(代码片段):
-
this.auth = new MailAuthenticator(username,password);
Session session = Session.getDefaultInstance(pros,auth);
session.setDebug(true); //设置获取 debug 信息
mimeMessage = new MimeMessage(session);
然后包装MimeMessage,即设置邮件内容(代码片段):
-
mimeMessage.setSubject(sub);
mimeMessage.setText(text);
mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
mimeMessage.setSentDate(new Date());
mimeMessage.setFrom(new InternetAddress(username,username));
- 然后利用Transport发送MimeMessage;
-
Transport.send(mimeMessage);
这样就完成基本的流程。
- 2)在邮件发送前的任何地方,添加如下代码:
-
System.setProperty("socksProxyHost", 代理IP);
System.setProperty("socksProxyPort",代理接口);
- 实现调用代理。
- 3)包装multipart,设置附件信息,
-
if(multipart==null){
multipart = new MimeMultipart();
}
multipart.addBodyPart(writeFiles(file));
mimeMessage.setContent(multipart);
实现添加附件功能。
- 注:在自己写的程序中发送邮件,相当于利用第三方操作自己的邮箱,这个时候有些邮箱就要求做用户密码和SSL验证,我测试用的QQ邮箱就需要,实现这个的关键,要先新建一个用户密码验证类MailAuthenticator,实现验证关键代码如下:
this.auth = new MailAuthenticator(username,password);
Session session = Session.getDefaultInstance(pros,auth);
- 代码中pros,是个Properties对象,包含了SSL验证等相关信息,如下:
相关推荐
在Java编程中,发送电子邮件是一项常见的任务,常常用于自动化通知、报表发送等场景。这篇文章将主要探讨如何在Java中实现邮件发送功能,并提及其他相关的工具和技术,如HTTP客户端和XML解析。 首先,让我们深入...
零碎时间利用小程序查看常见面试题,夯实Java基础。 一款面试刷题的 Spring Cloud 开源系统。零碎时间利用小程序查看常见面试题,夯实Java基础。 一款面试刷题的 Spring Cloud 开源系统。零碎时间利用小程序查看常见...
零碎时间利用小程序查看常见面试题,夯实Java基础。 该项目可以教会你如何搭建SpringBoot项目,Spring Cloud项目。 采用流行的技术,如 SpringBoot、MyBatis、Redis、 MySql、 ….zip一款面试刷题的 Spring Cloud ...
PassJava 是一款Java面试刷题的开源系统,可以用零碎时间利用小程序查看常见面试题,夯实Java基础。 技术栈如下: SpringBoot、SpringCloud、MyBatis、Redis、 MySql、 MongoDB、 RabbitMQ、Elasticsearch,采用...
【JAVA开发工程师简历-应届-】的文档主要展示了应届毕业生作为一名JAVA开发工程师的技能、教育背景、实践经验以及个人特质。以下是对这部分内容的详细解析: 1. **教育背景**: - 学历:本科,专业为信息治理与...
该项目利用了基于springboot + vue + mysql的开发模式框架实现的课设系统,包括了项目的源码资源、sql文件、相关指引文档等等。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理...
本文将深入探讨基于Spring Cloud构建的一款面试刷题系统,该系统旨在帮助Java开发者在零碎时间巩固基础知识,提升面试能力。Spring Cloud是微服务架构领域的一个热门框架,它为开发者提供了全套的云原生应用开发工具...
零碎时间利用小程序查看常见面试题,夯实Java基础。 该项目可以教会你如何搭建SpringBoot项目,Spring Cloud项目。 采用流行的技术,如 SpringBoot、MyBatis、Redis、 MySql、 MongoDB、 RabbitMQ、Elasticsearch,...
### ArcGIS消除零碎图斑详解 #### 一、引言 在地理信息系统(GIS)的应用过程中,经常需要处理大量的空间数据。这些数据中有时会包含许多细小的图斑,这些图斑可能是因为数据采集过程中的误差或者实际环境中的微小...
是一款Java面试刷题的开源系统,可以用零碎时间利用小程序查看常见面试题,夯实Java基础。 PassJava 项目可以教会你如何搭建SpringBoot项目,Spring Cloud项目 采用流行的技术,如 SpringBoot、MyBatis、Redis、 ...
matlab代码转java Tiny Things Collection 1. How to examine your device is Big-Endian mode or Little-Endian mode? Use union! Check out 1-Endian.cpp. union内的数据共享一片内存 2. Closure 闭包 Make the ...
《jQuery零碎实例详解》 jQuery,作为一款广泛应用于前端开发的JavaScript库,以其简洁的API和强大的功能,深受开发者喜爱。本资料集“jQuery零碎实例”深入浅出地介绍了jQuery在实际开发中的各种应用场景和技巧,...
在软件功能上,除了普通的编辑和编译功能以外,轻松汇编还可以自动整理格式、提供语法元素导航的功能。另外,它提供了一个集成调试环境,就像使用VC等开发工具一样能在界面里设置断点、查看寄存器和变量、单步,...
Python是一种广泛使用的高级编程语言,以其简洁明了的语法和强大的功能而闻名。"Python的零碎内容"标题暗示了这个压缩包可能包含一系列的Python编程示例、练习和小项目,旨在帮助学习者或开发者巩固和提升Python编程...
通过“微课”模式,学生能够集中精力攻克重点和难点,有效利用课后零碎时间进行学习。 4. “微课”的设计原则:作为以视频为主要载体的新型教学资源,“微课”聚焦于特定知识点或教学环节,通过精彩的教学活动,...
本文将深入探讨智能家居的基本结构和工作原理,以及其主要功能。 首先,智能家居系统由多个子系统构成,这些子系统分为必选和可选两类。必选系统包括智能家居(中央)控制管理系统、家居照明控制系统和家庭安防系统...
- **时分双工(TDD)**:同一频率下,通过时间分割来区分发送和接收,适用于不对称流量业务,可利用零碎频段,且无需手法隔离器。 3. **移动通信系统的发展历程**: - **第一代(1G)**:模拟信号传输,频率利用率低...
网络安全零碎资料,网络安全零碎资料