博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot非官方教程 | 第二十一篇: springboot集成JMS
阅读量:6427 次
发布时间:2019-06-23

本文共 4315 字,大约阅读时间需要 14 分钟。

springboot对JMS提供了很好的支持,对其做了起步依赖。

构架工程

创建一个springboot工程,在其pom文件加入:

org.springframework.boot
spring-boot-starter-mail

添加配置

spring.mail.host=smtp.163.comspring.mail.username=miles02@163.comspring.mail.password=spring.mail.port=25spring.mail.protocol=smtpspring.mail.default-encoding=UTF-8

在password 中填写自己的邮箱密码。

测试发邮件

测试代码清单如下:

package com.forezp;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.core.io.FileSystemResource;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMailSenderImpl;import org.springframework.mail.javamail.MimeMessageHelper;import org.springframework.test.context.junit4.SpringRunner;import javax.mail.internet.MimeMessage;import java.io.File;@RunWith(SpringRunner.class)@SpringBootTestpublic class SpringbootJmsApplicationTests {    @Test    public void contextLoads() {    }    @Autowired    private JavaMailSenderImpl mailSender;    /**     * 发送包含简单文本的邮件     */    @Test    public void sendTxtMail() {        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();        // 设置收件人,寄件人        simpleMailMessage.setTo(new String[] {"miles02@163.com"});        simpleMailMessage.setFrom("miles02@163.com");        simpleMailMessage.setSubject("Spring Boot Mail 邮件测试【文本】");        simpleMailMessage.setText("这里是一段简单文本。");        // 发送邮件        mailSender.send(simpleMailMessage);        System.out.println("邮件已发送");    }    /**     * 发送包含HTML文本的邮件     * @throws Exception     */    @Test    public void sendHtmlMail() throws Exception {        MimeMessage mimeMessage = mailSender.createMimeMessage();        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);        mimeMessageHelper.setTo("miles02@163.com");        mimeMessageHelper.setFrom("miles02@163.com");        mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【HTML】");        StringBuilder sb = new StringBuilder();        sb.append("");        sb.append("

spring 邮件测试

hello!this is spring mail test。

"); sb.append(""); // 启用html mimeMessageHelper.setText(sb.toString(), true); // 发送邮件 mailSender.send(mimeMessage); System.out.println("邮件已发送"); } /** * 发送包含内嵌图片的邮件 * @throws Exception */ @Test public void sendAttachedImageMail() throws Exception { MimeMessage mimeMessage = mailSender.createMimeMessage(); // multipart模式 MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true); mimeMessageHelper.setTo("miles02@163.com"); mimeMessageHelper.setFrom("miles02@163.com"); mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【图片】"); StringBuilder sb = new StringBuilder(); sb.append(""); sb.append("

spring 邮件测试

hello!this is spring mail test。

"); // cid为固定写法,imageId指定一个标识 sb.append(""); sb.append(""); // 启用html mimeMessageHelper.setText(sb.toString(), true); // 设置imageId FileSystemResource img = new FileSystemResource(new File("E:/1.jpg")); mimeMessageHelper.addInline("imageId", img); // 发送邮件 mailSender.send(mimeMessage); System.out.println("邮件已发送"); } /** * 发送包含附件的邮件 * @throws Exception */ @Test public void sendAttendedFileMail() throws Exception { MimeMessage mimeMessage = mailSender.createMimeMessage(); // multipart模式 MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true, "utf-8"); mimeMessageHelper.setTo("miles02@163.com"); mimeMessageHelper.setFrom("miles02@163.com"); mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【附件】"); StringBuilder sb = new StringBuilder(); sb.append(""); sb.append("

spring 邮件测试

hello!this is spring mail test。

"); sb.append(""); // 启用html mimeMessageHelper.setText(sb.toString(), true); // 设置附件 FileSystemResource img = new FileSystemResource(new File("E:/1.jpg")); mimeMessageHelper.addAttachment("image.jpg", img); // 发送邮件 mailSender.send(mimeMessage); System.out.println("邮件已发送"); }}

测试已全部通过,没有坑。

参考资料

源码下载

转载地址:http://ebfga.baihongyu.com/

你可能感兴趣的文章
Eclipse & IDEA 中常用的快捷键
查看>>
javascript ---IPhone滑动解锁
查看>>
table固定行和表头
查看>>
<每天读一点职场心理学>读书笔记
查看>>
Android权限大全代码
查看>>
android 判断SIM卡是哪个运营商
查看>>
删除N天前的M(天)个目录 、删除N天前最后修改的文件 ForFiles, dos command 批处理命令cmd/bat...
查看>>
十进制数1~n中1出现的次数
查看>>
PostgreSQL 的 语法分析的理解(五)
查看>>
[转载]Visual Studio 2010敏捷利剑:详解Scrum
查看>>
Java Collection: List、Set、 Map、 HashMap、 Hashtable、 Vector
查看>>
T-SQL查询进阶--流程控制语句
查看>>
Excel VBA小试
查看>>
备份Toad中保存的数据库连接用户名和密码
查看>>
ASP.NET中 Repeater 的使用前台绑定
查看>>
微信公众平台模拟群发技术
查看>>
C语言学习之指针详解
查看>>
学习使用Bing Maps Silverlight Control(一):准备和新建
查看>>
什么是Scrum
查看>>
nginx负载均衡的5种策略
查看>>