![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringBoot
文章平均质量分 54
岸河
这个作者很懒,什么都没留下…
展开
-
Circular view path would dispatch back to the current handler...This may be the result of an unspeci
问题背景项目升级了SpringBoot 2.2.7之后,项目中少数遗留的前后端未分离的界面出现问题完整报错信息Circular view path would dispatch back to the current handler…This may be the result of an unspecified view, due to default view name generation解决办法添加配置spring.freemarker.suffix=.ftl...原创 2021-10-27 14:28:16 · 913 阅读 · 0 评论 -
简单聊一聊HttpMessageConverter
简单聊一聊HttpMessageConverterorg.springframework.http.converter.HttpMessageConverter技术背景问题点项目重构,表结构重构,主键从自增id换成了 雪花算法生成的id。雪花算法生成的id是19位的,但是js超过16位就会出现精度损失,导致拿到的id不准确。简单解决后端将Long类型转成String传给前端,简单粗暴,十分有效,但是不优雅,而且要伴随着多次类型转化。统一处理Spring Framework里有个类,叫Http原创 2021-06-12 09:20:33 · 274 阅读 · 0 评论 -
SpringBoot优雅停机
通用做法public class GracefulShutdownListener implements TomcatConnectorCustomizer,ApplicationListener<ContextClosedEvent> { private final Logger logger = LoggerFactory.getLogger(GracefulShutdownListener.class); private volatile Connector connect原创 2021-05-01 08:34:03 · 262 阅读 · 1 评论 -
spring-webmvc和spring-web模块的联系与区别
两者都是属于web处理框架,都是spring的spring-webmvc只依赖乐一些spring的模块,包括spring-web模块spring-web的主要依赖序列化技术protobuf,gson,hession,http工具,httpclient,okhttpnetty依赖spring框架依赖,spring-aop,spring-beans,spring-context,spring-core,spring-oxm,还有servlet依赖javax.servlet-api.原创 2020-09-27 11:46:11 · 1584 阅读 · 0 评论 -
SpringBoot常用拦截器(HandlerInterceptor,ClientHttpRequestInterceptor,RequestInterceptor)
SpringBoot常用拦截器(HandlerInterceptor,ClientHttpRequestInterceptor,RequestInterceptor)上面3种拦截器,都是http拦截器,在处理业务逻辑之前对http请求信息进行处理,比如获取请求头,请求参数,设置请求头,请求参数等等思路清晰,先说jar包:HandlerInterceptor—>spring-webmvc项目,org.springframework.web.servlet.HandlerInterceptor原创 2020-09-27 11:10:02 · 9287 阅读 · 0 评论 -
web客户端http拦截器-HandlerInterceptor基本用法
拦截器Interceptor的常用玩法是用来拦截请求,进行特殊逻辑处理基本玩法1.实现WebMvcConfigurer接口要添加@Configuration注解,然后实现其addInterceptors方法,addInterceptors的入参是InterceptorRegistry2.实现一个HandlerInterceptor接口,实现其prehandler方法3.将步骤2中实现的HandlerInterceptor接口到步骤1中的实现类中,即调用InterceptorRegistry的.原创 2020-09-25 17:52:02 · 428 阅读 · 0 评论 -
SpringBoot无需重启,自动加载加载class文件[热部署]
首先声明,不同的IDEA版本,不同的SpringBoot版本,热部署生效的方式不一致。(家里的IDEA最新版不用加devtools依赖,不用设置Build project automatically,不用设置Registry,只要修改完类之后,Ctrl+Shift+F9重新编译一下,修改就可以生效了。公司的IDEA,只要重新编译,就会自动重启整个模块,非常浪费时间)这里所说的热部署或者说是热启动,不是自动重启项目,而是不重启项目,修改也能生效的一种效果。这里直接奉上链接:具体步骤这里再说明一转载 2020-08-31 09:43:29 · 1372 阅读 · 0 评论 -
IDEA远程调试Spring Boot应用
首先说明,远程调试传统项目和Spring Boot项目是完全不同的。传统项目部署在tomcat中,远程调试时需要将tomcat设置为debug模式;Spring Boot应用是打成jar包,只需要在启动jar包的时候配置jvm参数为debug模式就行,本文只讨论Spring Boot项目。这里的debug模式是调试模式,而不是日志级别调整为debug。远程调试需要本地代码和远程服务...原创 2019-08-01 17:23:37 · 1044 阅读 · 0 评论 -
Spring Boot如何创建自定义starter
背景:(1)有时在公司内部有时候自研中间件,需要被其他项目依赖,这个时候直接引入starter,可以实现自动化配置,可以做到对其他项目代码无污染入侵。(2)Spring Boot大量使用了starter模式,比如spring-boot-starter-redis,spring-boot-starter-jdbc,spring-boot-starter-data-jpa,spring-boot...原创 2019-07-19 11:29:49 · 2703 阅读 · 2 评论 -
SpringBoot热部署配置(IDEA)
尽管说SpringBoot的启动速度已经很快了,但是有时候不断修改配置或者参数的时候还是需要使用到热部署(多学一招,不吃亏),这里记录一下设置三个的步骤。ps:IDEA的热部署插件不太好用。1.设置自动构建项目,选中Build project automatically,打上对勾;2.设置自动编译,快捷键:ctrl+alt+shift+/,选择Registry,然后按下面选择,最后重启ID...原创 2019-07-18 10:51:44 · 132 阅读 · 0 评论 -
如何获取String类型的ObjectName及其属性
问题背景:最近在做应用监控系统,使用jolokia+prometheus+grafana,其中jolokia负载直接获取JMX端点信息。一、通过java.lang.management.ManagementFactory类获取java.lang.management.ManagementFactory的成员变量是各种MXBean,我们可以直接获取起ObjectName,如下图:/** ...原创 2019-06-18 13:47:48 · 1423 阅读 · 0 评论 -
application.properties配置失效
解决办法:将pom文件中的<packaging>pom</packaging>换成<packaging>jar</packaging>原因是不小心在子模块中加入了一个module,虽然后来将module移除掉了,但是由于加入module的时候会自动将此项目打包方式由jar变成pom,然后添加modules标签,导致以po...原创 2019-06-04 14:02:06 · 4010 阅读 · 1 评论 -
SpringBoot项目部署相关普及
SpringBoot项目部署相关普及现在的SpringBoot项目多采用maven复合工程的结构进行搭建,当我们需要在本地打包的时候执行mvn clean package就可以在各个子模块的target目录生成jar包(不管此子模块有无main方法,都会生成jar包);执行mvn clean install的时候就可以将jar包部署到本地的maven仓库;执行mvn clean deploy就可...原创 2019-05-28 16:24:49 · 135 阅读 · 0 评论 -
logback.xml模版文件,配置文件
logback.xml模版文件,配置文件在SpringBoot以及SpringCloud项目中,更推荐使用logback-spring.xml这种命名方式,因为使用logback.xml可能会导致一些application.properties配置一些logging.file等配置失效出现LOG_FILE_IS_UNDEFINED的错误,而且使用logback-spring.xml不能使用log...原创 2019-05-30 17:36:33 · 597 阅读 · 0 评论 -
Unable to start embedded container SpringBoot启动报错
自己手动创建的一个SpringBoot工程,添加的依赖,报了这个错,然后百度没看到明显的错误:org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.beans.factor...原创 2019-05-09 18:50:24 · 11613 阅读 · 2 评论 -
SpringBoot日志实现
SpringBoot日志实现SpringBoot日志默认实现SpringBoot默认的日志实现是使用slf4j+logback,这种实现类似于JDBC + 数据库驱动(统一接口+实现类)。slf4j叫做日志门面,是一个统一的日志接口层,各种具体的日志实现都可以通过slf4j来实现,比如logback就是一个具体的日志门面的实现。常见日志框架市面上常见的日志框架有:JUL , JCL ...原创 2019-04-07 23:37:21 · 8101 阅读 · 1 评论