项目实战之集成邮件开发

简介: commons-email是在JavaMail的基础上简化邮件开发的。分别提供了如下:SimpleEmail: 用来发送基本的基于文本的电子邮件。MultiPartEmail :发送带有附件的电子邮件。

commons-email是在JavaMail的基础上简化邮件开发的。

分别提供了如下:

SimpleEmail: 用来发送基本的基于文本的电子邮件。

MultiPartEmail :发送带有附件的电子邮件。

HtmlEmail :这个类是用来发送HTML格式的电子邮件。 它拥有MultiPartEmail所有的功能并且允许方便地添加附件。 它还支持嵌入图像。

ImageHtmlEmail:这个类是用来发送HTML格式的电子邮件与内联图像。 它拥有HtmlEmail所有功能,支持变换和引用内部图片。

EmailAttachment: 这是一个简单的容器类以便可以轻松处理附件。 它是用于MultiPartEmail和HtmlEmail的实例。

发送简单的邮件

注意的是:setAuthentication的第二个参数不是密码,是授权验证码

 

    /**
     * 测试发送一封邮件
     */
    @Test
    public void test01() throws EmailException {
        SimpleEmail email = new SimpleEmail();
        //告诉要登陆的邮局地址
        email.setHostName("smtp.163.com");
        //登陆邮局
        email.setAuthentication("ooxx_job@163.com","a123456");

        //给哪里发送
        email.addTo("xxoo@qq.com");
        //从哪里来
        email.setFrom("ooxx_job@163.com");
        //邮件的标题
        email.setSubject("love徐徐");
        //邮件的内容
        email.setMsg("就是love徐徐。。。love徐徐");




        //发送邮件
        email.send();

        //javax.mail.AuthenticationFailedException: 535 Error: authentication failed
        //用户名密码不对

        System.out.println("徐徐收到了...");
    }

 使用HtmlEmail举个例子:

    @Test
    public void test02() throws EmailException {
        HtmlEmail email = new HtmlEmail();
        //告诉要登陆的邮局地址
        email.setHostName("smtp.163.com");
        //登陆邮局
        email.setAuthentication("ooxx_job@163.com","a123456");

        //给哪里发送
        email.addTo("xxoo@qq.com");
        //从哪里来
        email.setFrom("ooxx_job@163.com");
        //邮件的标题
        email.setSubject("love徐徐");
        email.setCharset("UTF-8");
        //邮件的内容
        email.setHtmlMsg("就是love徐徐。。。love徐徐;<h1>这是管理邮箱,请勿回复</h1>" +
                "<a href='http://scw.com/member/password.html?token=dsaldjsakljdsklandjksajdk321731289789'>哈哈。想密码重置?</a>");




        //发送邮件
        email.send();

        //javax.mail.AuthenticationFailedException: 535 Error: authentication failed
        //用户名密码不对

        System.out.println("徐徐收到了...");
    }

 

相关文章
|
JavaScript 前端开发 持续交付
Prettier 高级应用:集成 CI/CD 流水线与插件开发
【10月更文挑战第18天】Prettier 是一款流行的代码格式化工具,它能够自动将代码格式化成一致的风格,从而提高代码的可读性和维护性。对于希望进一步发挥 Prettier 潜力的高级用户而言,将 Prettier 集成到持续集成(CI)和持续部署(CD)流程中,确保每次提交的代码都符合团队标准,是非常重要的。此外,通过开发自定义插件来支持更多语言或扩展 Prettier 的功能也是值得探索的方向。本文将详细介绍这两方面的内容。
265 2
|
2月前
|
XML 测试技术 API
利用C#开发ONVIF客户端和集成RTSP播放功能
利用C#开发ONVIF客户端和集成RTSP播放功能
1316 123
|
4月前
|
数据采集 运维 DataWorks
DataWorks 千万级任务调度与全链路集成开发治理赋能智能驾驶技术突破
智能驾驶数据预处理面临数据孤岛、任务爆炸与开发运维一体化三大挑战。DataWorks提供一站式的解决方案,支持千万级任务调度、多源数据集成及全链路数据开发,助力智能驾驶模型数据处理与模型训练高效落地。
|
7月前
|
监控 Java API
1K star!这个开源项目让短信集成简单到离谱,开发效率直接翻倍!
SMS4J 是一款由国内技术团队打造的短信聚合框架,专为解决多短信服务商接入难题而生。它就像短信界的"瑞士军刀",目前已整合21家主流短信服务商,从阿里云、腾讯云到中国移动云MAS,开发者只需通过简单配置即可实现多平台无缝切换。
453 4
|
9月前
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
584 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
5月前
|
监控 安全 Java
Java 开发中基于 Spring Boot 3.2 框架集成 MQTT 5.0 协议实现消息推送与订阅功能的技术方案解析
本文介绍基于Spring Boot 3.2集成MQTT 5.0的消息推送与订阅技术方案,涵盖核心技术栈选型(Spring Boot、Eclipse Paho、HiveMQ)、项目搭建与配置、消息发布与订阅服务实现,以及在智能家居控制系统中的应用实例。同时,详细探讨了安全增强(TLS/SSL)、性能优化(异步处理与背压控制)、测试监控及生产环境部署方案,为构建高可用、高性能的消息通信系统提供全面指导。附资源下载链接:[https://pan.quark.cn/s/14fcf913bae6](https://pan.quark.cn/s/14fcf913bae6)。
909 0
|
7月前
|
人工智能 程序员 测试技术
通义灵码与魔搭 Notebook 深度集成:在线编码开箱即用,开发效率倍增
通义灵码 2.0 AI 程序员 2025 年 1 月正式上线,目前已经服务百万开发者,成为国内开发者最受欢迎的智能编码助手。
|
7月前
|
人工智能 IDE 测试技术
通义灵码与魔搭Notebook深度集成:在线编码开箱即用,开发效率倍增
通义灵码2.0 AI程序员于2025年1月上线,目前已支持超过百万开发者。该工具的智能编程能力现已与阿里云AI模型开发平台魔搭ModelScope实现技术集成
318 0
|
12月前
|
开发框架 JavaScript 前端开发
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势。通过明确的类型定义,TypeScript 能够在编码阶段发现潜在错误,提高代码质量;支持组件的清晰定义与复用,增强代码的可维护性;与 React、Vue 等框架结合,提供更佳的开发体验;适用于大型项目,优化代码结构和性能。随着 Web 技术的发展,TypeScript 的应用前景广阔,将继续引领 Web 开发的新趋势。
303 2
|
12月前
|
传感器 前端开发 Android开发
在 Flutter 开发中,插件开发与集成至关重要,它能扩展应用功能,满足复杂业务需求
在 Flutter 开发中,插件开发与集成至关重要,它能扩展应用功能,满足复杂业务需求。本文深入探讨了插件开发的基本概念、流程、集成方法、常见类型及开发实例,如相机插件的开发步骤,同时强调了版本兼容性、性能优化等注意事项,并展望了插件开发的未来趋势。
323 2