![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringBoot
落_尘
一个小小的程序猿之一。有问题请留言,欢迎大家讨论
展开
-
使用spring event事件通知机制做代码解耦
我们日常开发过程中经常会遇到一些代码逻辑不想耦合在一起,就想要解耦,这种情形下,我们可以使用spring的时间通知机制,方法如下:创建一个通知的事件消息体:@Datapublic class BannerTransferEvent extends ApplicationEvent { private BannerTransfer transfer; public BannerTransferEvent(Object source,BannerTransfer transfer) {原创 2022-03-04 17:10:16 · 721 阅读 · 0 评论 -
API接口定义的一次学习
对于API接口的设计,如果有这样一个功能。有个功能有两个业务要使用。里面需要用到5个参数:A,B,C,D,E对于A,B参数,两个业务方都能获取到,而对于C,D,E三个参数,两个业务的数据不一样,需要分别写死。像这种功能的设计,我原本的设计是,请求参数传入A,B,C,D,E参数,对于CDE参数,两个业务方自己写死参数,然后传入后端,这样后端只需要提供一个接口,然后拿到参数进行处理就好了。今天学到一种理念,对于这种方式的接口设计,尽量的设计个性化,所谓个性化就是,对于两个业务方分别设计一个接口,C,D,E原创 2022-02-17 21:32:10 · 510 阅读 · 0 评论 -
spring boot多数据库数据源启动报错“required a single bean, but 2 were found”的正确解决办法
报错Parameter 0 of method jdbcTemplate in org.springframework.boot.autoconfigure.jdbc.JdbcTemplateConfiguration required a single bean, but 2 were found: - primaryDataSource: defined by method 'dataSource' in class path resource [com/xxx/xxx/base/infra/con原创 2021-09-18 21:00:18 · 5373 阅读 · 0 评论 -
返回类型为泛型时,代码中将字符串结果强转为指定返回类型的实现
最近在写一个本地缓存+Redis缓存的工具,主要实现就是请求来了先从本地缓存拿数据,如果本地缓存没有数据或者数据已过期,就从Redis中拿数据,如果Redis中没有数据,或者数据过期,则根据用户实现的子类实现的初始化方法拿到应该初始化的数据的功能,由于缓存的子类实现有很多,而且每一个缓存的实现的返回类型等都不相同,所以在提供的获取方法时的返回值使用了泛型,而在Redis中存储数据时,由于不知道子类要缓存的具体数据类型是什么,所以就全部转成JSONString存储到Redis,这种就有一个问题,w为了方便使原创 2021-09-13 11:06:16 · 988 阅读 · 1 评论 -
一看就懂的IOC创建对象流程,以及循环依赖解决的三级缓存流程
这两天一直在看IOC容器在创建指定对象的流程,以及解决循环依赖的三级缓存流程,按照自己的理解画了个流程图,以及文字说明,如果有错误的地方欢迎指出:原创 2021-05-29 15:43:56 · 234 阅读 · 0 评论 -
SpringBoot实现一个项目多模块,多主启动模块,每个模块多环境配置文件
我们在日常开发过程中,在新建一个项目中,我们经常会将一个项目按照功能性、模块等将一个项目分成多个子项目,这些子项目都包含在主项目中。对于Spring、SpringBoot中实现多模块化,网上有很多教程,这里就不在讲述了。本次主要讲的是如何在一个项目中能够有两个Application,即有两个启动类,启动不同的启动类,能够访问不同的功能,另外我们开发项目时,需要将配置分为开发环境、测试环境、生产...原创 2019-02-17 20:32:57 · 65684 阅读 · 9 评论 -
idea - springboot - No mapping found for HTTP request with URI [**] in DispatcherServlet
今天在布置项目时出现一个问题,就是我在一台新电脑上从git上下载一个SpringBoot项目,然后布置完成之后,启动成功,但是在访问首页登录页面时,报错如下:2018-04-28 15:46:34.457 INFO 596 --- [ restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on ...原创 2018-04-28 16:00:25 · 16435 阅读 · 1 评论 -
SpringBoot功能笔记
该篇文章用于记录在平时使用时遇到的SpringBoot的一些功能:spring.profiles.activespring boot允许你通过命名约定按照一定的格式(application-{profile}.properties)来定义多个配置文件,然后通过在application.properyies通过spring.profiles.active来具体激活一个或者多个配置文件,如果没...原创 2018-04-04 11:05:16 · 214 阅读 · 0 评论 -
idea 的SpringBoot项目做单元测试
SpringBoot项目的一个功能开发完成之后,需要对功能做单元测试,需要项目有单元测试的功能,这个项目是一个新建的项目,所以需要自己弄,下面记载一下步骤。首先,我们使用点击需要做单元测试的类名,右击使用idea自带生成单元测试文件的功能: 1.点击文件 -> GO TO -> Test 2. 3. 4.生成测试文件 5.加单元测试注解 6.在测试类中添加测试逻原创 2018-02-02 18:17:15 · 40140 阅读 · 0 评论 -
idea 部署SpringBoot项目时打成jar包一些坑的总结
前一段时间,公司分配给我做一些微服务的功能,比如一些分析、一些可以拿出来的模块,所以采用了SpringBoot搭建的微服务项目,至于关于SpringBoot的介绍,这里就不展开了。今天主要写的是这两天我需要把我本地的项目部署到服务器上,遇到的一个问题。还有我这两天查看网上的一些关于SpringBoot部署发现的其他人发现的一些问题,在这里总结一下,用于以后能够自己能够快速查看解决,当然如果能够帮助原创 2018-01-26 13:41:11 · 115966 阅读 · 5 评论 -
SpringBoot基于AOP实现自定义注解
今天写的这个博客是用于,在Spring项目中如何实现自定义注解。 现在我的项目中需要在API工程中记录用户的行为日志。由于行为日志中有行为描述等等的对于每一个接口不同的数据。有两种实现方法: 第一种就是写一个公共方法,然后在每个Controller中手动传参调用,这样冗余代码比较多,而且现在接口都完成了,要每个接口加这样的代码,会很烦。 第二种就是实现在方法上注解。这就需要我们实现自己的自定原创 2017-11-06 11:26:05 · 9086 阅读 · 3 评论 -
SpringBoot拦截器或过滤器中使用流读取参数后,controller中注解读取不到参数
今天出现这样一个问题: 现在开发的项目是基于SpringBoot的maven项目,有个需求就是要加一个拦截器和过滤器,在拦截器中我需要获取到前端传过来的json数据,按照常理来说,获取请求参数使用request.getParameter()方法就可以,但是不知道为什么在这个项目里面获取不到。这时候我想到了使用流的方法从request对象中直接读出来。 当然,方法写好后,在拦截器中也读取到了请求原创 2017-11-02 10:13:47 · 27877 阅读 · 25 评论 -
SpringBoot的拦截器中依赖注入为null
该项目是基于SpringBoot框架的Maven项目。 今天在拦截器中处理拦截逻辑时需要使用注解调用其他方法 并且要从配置文件中读取参数。所以我使用了以下注解: @Reference CoreRedisService redisService; @Value("${channel}") private String channel; @Value原创 2017-11-02 10:36:28 · 8647 阅读 · 2 评论