, 4 12月 2021 作者 847954981@qq.com 后端学习 SpringBoot的JavaMailSender(邮件发送)接口使用 Spring为邮件发送功能提供了一个很好的接口JavaMailSender...,同时SpringBoot也为此提供了相应的自动化配置 依赖引用: org.springframework.boot...starttls: # 需要TLS认证 保证发送邮件安全验证 enable: true required: true */ 在发送邮件时...,通过 SmpleMailMessage 类来简单配置出一个邮件信息,使用JavaMailSender来发送邮件: @Autowired private JavaMailSender mailSender
自动根据上面 params 配置的字段中取值,查找到合适的值时就会自动分页。...方法一:使用service查询到的结果存储在request域中 private void selectAllUsers(HttpServletRequest request, HttpServletResponse...service查询到的结果存储在自定义的类中然后返回给前端 public PageResult> queryByProjectName(Integer pageNo.../每页的数量 private int pageSize; //当前页的数量 private int size; //由于startRow 和endRow 不常用,这里说个具体的用法 //可以在页面中...导航条上的第一页 private int navigateFirstPage; //导航条上的最后一页 private int navigateLastPage; } 第四步、关于controller中的使用
但是我们需要使用servlet该如何做呢?虽然这种需求非常少,但是在springboot的官方文档对servlet的使用有过描述。下面我们来看看在springboot中如何使用和配置servlet。...3.springboot配置 在包com.dhb中定义一个Bean。...也就是在本文中,其所在的package 在com.dhb中。...5.UrlMapping设置 在springboot的启动类中定义了的Bean里面,可以设置urlMapping。但是需要注意的是,这样一来,Servlet设置的urlPatterns将不再生效。...8.总结 在SpringBoot中使用servlet是很少见的,毕竟SpringMVC使用起来非常方便,几乎没有直接使用servlet的必要。但是这并不意味着我们可以忽略servlet的存在。
5.MailSenderDemo.java如下: public class MailSenderDemo { @Autowired private JavaMailSender
在spring环境中使用spock,也就是要自动注入被测试的实例,不需要我们手动初始化实例。...这样也就是先启动spring容器,再运行我们的测试用例,在springboot中,很容易做到这一点,甚至比junit还简单。...本文转载自:jvm123-java技术分享站 原文链接:http://jvm123.com/2019/08/spock-springboot/
相信使用过Spring的众多开发者都知道Spring提供了非常好用的 JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。...下面通过实例看看如何在Spring Boot中使用 JavaMailSender发送邮件。...由于Spring Boot的starter模块提供了自动化配置,所以在引入了 spring-boot-starter-mail依赖之后,会根据配置文件中的内容去创建 JavaMailSender实例,因此我们可以直接在需要使用的地方直接...进阶使用 在上例中,我们通过使用 SimpleMailMessage实现了简单的邮件发送,但是实际使用过程中,我们还可能会带上附件、或是使用邮件模块等。...这里,我们通过传入username的参数,在邮件内容中替换了模板中的 ${username}变量。
死信队列可以实现消息在未被正常消费的场景下,对这些消息进行其他处理,保证消息不会被丢弃。...正常业务队列中的消息变成了死信消息之后,会被自动投递到该队列绑定的死信交换机上(并带上配置的路由键,如果没有指定死信消息的路由键,则默认继承该消息在正常业务时设定的路由键)。....withArgument("x-message-ttl", 5000) .build(); }把user-queue的消费者注释,使消息无法被消费,直到消息在队列中的时间达到设定的存活时间...还可以在消息投递之前,给每条消息设定指定的过期时间。.../tree/master/springboot-learn-rabbitmq # 相关: [SpringBoot RabbitMQ实现消息可靠投递 ](https://www.jianshu.com/p
正常业务队列中的消息变成了死信消息之后,会被自动投递到该队列绑定的死信交换机上(并带上配置的路由键,如果没有指定死信消息的路由键,则默认继承该消息在正常业务时设定的路由键)。...withArgument("x-message-ttl", 5000) .build(); } 把user-queue的消费者注释,使消息无法被消费,直到消息在队列中的时间达到设定的存活时间...image.png 向队列中投递消息 ? image.png 从结果可以看出,当投递第3条消息的时候,RabbitMQ会把在最靠经被消费那一端的消息移出队列,并投递到死信队列。 ?...image.png 源码:https://github.com/FutaoSmile/springboot-learn-integration/tree/master/springboot-learn-rabbitmq...# 相关: SpringBoot RabbitMQ实现消息可靠投递 # TODO: 消费端限流保护 延迟队列
最早期的时候我们会使用 JavaMail相关 api来写发送邮件的相关代码,后来spring推出了 JavaMailSender更加简化了邮件发送的过程,在之后 springboot对此进行了封装就有了现在的...但它并没有包含在 JDK中,而是作为 JavaEE的一部分。而 JavaMailSender底层也是基于 JavaMailjar包的。...发送html邮件 但是在正常接口测试的过程中,我们通常在邮件中加入附件完整HTML测试报告来通知测试结果,下面讲介绍如何使用 springboot来发送 html报告的邮件。...发送带静态资源的邮件 邮件中的静态资源一般就是指图片,在 MailService添加 sendAttachmentsMail方法 /** * 发送正文中有静态资源(图片)的邮件 *...模板的本质很简单,就是在模板中替换变化的参数,转换为html字符串即可,这里以 thymeleaf为例来演示。
使用AOP在SpringBoot中实现日志记录功能:详细教程 摘要 大家好,我是默语博主。在这篇博客中,我们将深入探讨如何在SpringBoot中使用AOP(面向切面编程)实现日志记录功能。...希望本文能为您提供有价值的指导,并帮助您更好地掌握SpringBoot中的AOP技术。 引言 在现代软件开发中,日志记录是一个不可或缺的功能。...使用AOP 在SpringBoot项目中使用AOP来实现日志记录功能,我们需要按照以下步骤进行: 一、导入依赖 在SpringBoot项目的pom.xml文件中添加AOP相关依赖: 在日志记录过程中对敏感数据进行适当的脱敏或加密。可以在切面类中添加相应的逻辑,确保敏感信息不会泄露。...应用 总结 本文详细介绍了如何在SpringBoot中使用AOP实现日志记录功能。
在阅读springboot官方文档spring-boot-reference.pdf的过程中,发现springboot的国际化支持也是非常不错的。...虽然项目采用了前后端分离,最终通过前端js代码来实现了国际化,但是阅读springboot的解决方式之后,不得不说springboot在这个问题上还是非常便捷的。...在idea中,resources下面创建一个i18n目录来存放这些资源,为什么是i18n呢,i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“...我们将定义一个login.html的文件放置在resources/templates目录。 springboot来实现国际化配置还是非常方便的。但是目前前后端大多数采用分离架构,因此这个功能也不再像当年struts时代会有非常多的人来使用。
想要实现浏览器的主动推送有两种主流实现方式: 轮询:缺点很多,但是实现简单 websocket:在浏览器和服务器之间建立 tcp 连接,实现全双工通信 springboot 使用 websocket...注意:如下都是针对使用 springboot 内置容器 二、实现 1、依赖引入 要使用 websocket 关键是@ServerEndpoint这个注解,该注解是 javaee 标准中的注解,tomcat7...及以上已经实现了,如果使用传统方法将 war 包部署到 tomcat 中,只需要引入如下 javaee 标准依赖即可: javax...springboot 内置容器,无需引入,springboot 已经做了包含。...serverEndpointExporter(){ return new ServerEndpointExporter(); } } 3、申明 endpoint 建立MyWebSocket.java类,在该类中处理
最早期的时候我们会使用 JavaMail相关 api来写发送邮件的相关代码,后来spring推出了 JavaMailSender更加简化了邮件发送的过程,在之后 springboot对此进行了封装就有了现在的...但它并没有包含在 JDK中,而是作为 JavaEE的一部分。而 JavaMailSender底层也是基于 JavaMailjar包的。...发送html邮件 但是在正常接口测试的过程中,我们通常在邮件中加入附件完整HTML测试报告来通知测试结果,下面讲介绍如何使用 springboot来发送 html报告的邮件。...发送带静态资源的邮件 邮件中的静态资源一般就是指图片,在 MailService添加 sendAttachmentsMail方法 ? 测试类中添加test方法 ? 查看收件箱 ?...模板的本质很简单,就是在模板中替换变化的参数,转换为html字符串即可,这里以 thymeleaf为例来演示。
开篇 这篇只介绍怎么用,不说原理;先说一种常用的定时任务的方法;使用schedule定时任务最常用的是使用Springboot自带schedule;使用springboot自带的schedule实现定时任务...,在定时任务的具体逻辑方法加上注解@Schedule("${cron表达式}")使用Quratz:Quartz 是一个完全由 Java 编写的开源作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制...创建springboot工程: 在IDEA中基于springboot 2.7....还有一个Scheduler 代表一个调度容器,一个调度容器中可以注册多个 JobDetail 和 Trigger。...在Trigger中使用withSchedule方法加入调用队列;@Configurationpublic class JobConfiguration { @Value("${quartz.push.cron
,以期方便使用的方法;在使用Lombok之后,将由其来自动帮你实现代码生成,注意,其是 在运行过程中,帮你自动生成的 。...SpringBoot中使用lombok 添加依赖 <!...lombok的注解介绍 @NonNull : 让你不在担忧并且爱上NullPointerException @CleanUp : 自动资源管理:不用再在finally中添加资源的close方法...在 Bean / Entity 类上使用 @Data 注解。...如果你只是需要在Class中仅暴露几个字段,那么使用它们非常方便,但如果您需要为所有字段生成访问器,则会变得烦人又无聊。 为了使代码更加简洁, Lombok永续我们在类级上使用这些注解。
,具体来说可以分为如下几步: 第一步: 在项目中引入依赖配置。...afterAdvice执行:Tue Jul 18 00:20:31 CST 2023 这里是afterRunningAdvice执行:Tue Jul 18 00:20:31 CST 2023 当目标方法执行时抛出异常,且在环绕通知中没有明确捕获该异常...AfterReturning通知中还可以获取目标方法的返回值,在@AfterThrowing通知中可以获取目标方法抛出的异常。...【参考】 aop-pointcuts-combining Spring AOP - 注解方式使用介绍 原来这才是Spring Boot使用AOP的正确姿势 在SpringBoot中使用AOP——...通知中的参数 AOP通知获取数据(参数、返回值、异常) Spring AOP使用:自定义注解、通知(简单使用和原理了解) SpringBoot之Filter注册 优雅的使用SpringBoot
浏览器先询问服务器,当前网页所在的域名是否在服务器的许可名单之中,以及可以使用哪些HTTP动词和头信息字段。只有得到肯定答复,浏览器才会发出正式的XMLHttpRequest请求,否则就报错。...spring-webmvc:CorsFilter spring-webflux:CorsWebFilter springcloud-gateway集成的是webflux,所以这里使用的是CorsWebFilter...在gmall-gateway中编写一个配置类,并且注册CorsWebFilter: @Configuration public class CorsConfig { @Bean public...CORS配置对象 CorsConfiguration config = new CorsConfiguration(); // 允许的域,不要写*,否则cookie就无法使用了
前言 最初的目的就想要在项目中把Redis用起来,然后最近公司的项目全部需要转成springboot,所以现在的项目都是Springboot的,自己刚好也研究下Springboot的。...在application.properties中配置redis。...在redis查一下,发现redis中的key 值并不是我们设置的quellan ,而是一串。这就很难受啦!...查了一下,原来是使用的RedisTemplate ,spring-data-redis的RedisTemplate模板类在操作redis时默认使用JdkSerializationRedisSerializer...那这样是不是每次存session都需要手动存到redis中呢,常理来说当然是的,但是既然是SpringBoot 当然需要不一样啦,只需要增加一个依赖,人家就能帮你自动的加载到redis中。
mongodb是最早热门非关系数据库的之一,使用也比较普遍,一般会用做离线数据分析来使用,放到内网的居多。...由于很多公司使用了云服务,服务器默认都开放了外网地址,导致前一阵子大批 MongoDB 因配置漏洞被攻击,数据被删,引起了人们的注意, 超33000个数据库遭遇入侵勒索,同时也说明了很多公司生产中大量使用...MongoDB对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。 MongoDB中的一条记录就是一个文档,是一个数据结构,由字段和值对组成。...到此springboot对应mongodb的增删改查功能已经全部实现。...多数据源mongodb的使用 在多mongodb数据源的情况下,我们换种更优雅的方式来实现 1、pom包配置 添加lombok和spring-boot-autoconfigure包引用 <dependency
一、配置 1.添加依赖 在 springboot 启动器中直接添加依赖,或者创建后添加 Maven 依赖: jedis 3.3.0 注意,默认在springboot...1X 中默认使用的是 Jedis 客户端,而在 springboot 2X 默认使用的就是 Lettuce,我这里使用的是 2X 的版本,所以要添加 Jedis 的客户端依赖。...2.配置连接池 在 springboot 配置文件中配置连接信息: spring: # redis redis: # 数据库索引(默认为0) database: 0 host...SpringBoot 1X 中,RedisCacheManager 构造器传入的参数的 RedisTemplate,而在 SpingBoot 2X 中需要传入 RedisCacheConfiguration