
spring
文章平均质量分 77
项哥
热爱技术
展开
-
Spring Devtools源码解析
看别人的源码解析自己不上手的话其实并没有真正掌握源码官方使用说明使用文档中文翻译源码在Spring boot项目中Spring Devtools 源码初步解析核心流程1.spring.factories中定义了很多需要被初始化的类,程序启动的时候会扫描spring.factories并注册事件监听者RestartApplicationListener# Application Initializersorg.springframework.context.ApplicationContext原创 2022-05-10 10:20:16 · 759 阅读 · 0 评论 -
Springloaded源码解析
spring-loaded Spring官方的热更新agentSpring Loaded allows you to add/modify/delete methods/fields/constructors评价使用asm进行字节增强,速度较快,但是字节增强的代码比较难懂,可以将增强后的类保存下来反编译查看增强的结果不依赖于DCEVM,可以直接在开发的jdk中使用自己实现的类更新监控,一个类只能监控一个文件,不能监控自定义目录,如果想要实现远程热部署不是很理想,没有使用nio系统文件监控,自己启原创 2022-05-08 17:49:51 · 1952 阅读 · 0 评论 -
HotswapAgent源码解析
HotwapAgentJava unlimited redefinition of classes at runtime使用方法按照github和官网说明操作即可, 依赖于DCEVM如果自定义监控外部文件,需要将hotswap-agent.properties添加到src/main/resources中,并且配置extraClasspath属性源码解析评价代码非常优雅,没有一个过长的类,每一个类源码都值得学习字节码操作使用的是javassit, 可以非常直观的在某个方法的前面或者后面插原创 2022-05-06 22:56:38 · 2572 阅读 · 5 评论 -
将thrift生成的对象转换为简洁json
thrift生成的对象输出为清洁版的json原创 2021-12-07 17:03:07 · 2272 阅读 · 0 评论 -
Spring懒加载妙用
开启 Spring 全局 bean 懒加载的好处可以加快启动速度,当服务依赖很多的时候,增速非常明显。服务启动时不用考虑依赖,不需要满足所有的依赖就可以启动服务建议 在 test, qa, dev 等环境酌情开启,在自己本机调试测试时可以只测试部分功能,只需要保证需要测试的功能依赖满足即可生产环境一般不建议开启本机单元测试的时候使用全局懒加载和 @mock 结合开启 Spring 全局 bean 懒加载的坏处屏蔽了启动时对 bean 的依赖检查,当 bean 不满足生成条件的时候需要等待原创 2021-09-29 12:10:49 · 819 阅读 · 0 评论 -
spring-cloud-netflix-hystrix的/acutor/hystrix.stream错误UT005023
错误现象UT005023: Exception handling request to /actuator/hystrix.streamgithub上的issue解决方案查看github代码发现在master分支上已经将这个问题修复,但是当前maven中央仓库最新jar包1.5.18中并没有修复。解决方案: 自己打一个jar包覆盖掉原来的jar包我是自己打了包一个1.5.19版本的jar包放到公司私有的maven仓库<dependency> <groupId>原创 2021-03-18 12:00:34 · 7210 阅读 · 0 评论 -
Ribbon使用笔记和问题
老的客户端是用服务端依赖swagger-codegen-maven-plugin在打包的时候自动生成的,服务接口调用本质上是用的restTemplate切换为微服务以后,只需要在restTemplate上面加一个@LoadBalanced注解即可根据服务名调用遇到的问题1.provider并发不足,会进入熔断短路状态:Hystrix circuit short-circuited and is OPENconsumer会一直重试,可能会让provider奔溃,所以consumer应该在provi.原创 2020-07-24 15:40:56 · 722 阅读 · 0 评论 -
Feign使用笔记和问题解决
Feign让客户端调用变得非常简单使用添加maven依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>增加注解@EnableFeignClients注意***@EnableFeignClients注解原创 2020-07-17 09:30:03 · 1551 阅读 · 2 评论 -
Spring boot问题及其解决
自定义WebMvcRegistrations无效现象:问题出现在一个由spring-mvc老工程改造成spring boot项目中,在Application.java类中通过@ImportResource(“classpath:applicationContext-*.xml”)把xml的配置实例化,下面的自定义webmvc注入器无效 @Bean public WebMvcReg...原创 2020-05-06 16:34:54 · 2164 阅读 · 0 评论 -
Spring-boot快速开发
一键生成Spring-boot系统: jeecg-boot单元测试模板类package com;import lombok.extern.slf4j.Slf4j;import org.junit.FixMethodOrder;import org.junit.Test;import org.junit.runner.RunWith;import org.junit.runners....原创 2019-06-20 16:09:16 · 407 阅读 · 0 评论 -
spring-boot工程打包成jar包如何启动执行一次任务后就退出
spring-boot工程打包成了jar包的服务如何在执行单次任务就结束?思路一: 先启动工程,再mvc调用一次请求执行结束再内部结束进程思路二: 工程启动完成执行完任务以后立马结束import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import or...原创 2019-04-25 15:43:21 · 1917 阅读 · 3 评论 -
spring-boot docker使用
参考文档: dockerfile-maven Spring Boot with Docker我电脑是windows7,实际上是在虚拟机中跑的docker,启动docker以后用mvn clean install dockerfile:build一直报下面的错误 Execution default-cli of goal com.spotify:dockerfile-maven-plugi...原创 2018-06-13 15:41:16 · 744 阅读 · 0 评论 -
Spring boot开发笔记
自动扫描配置不需要扫描某个包或者某个类,下面的写法不会扫描org.xxx.yyy.*下的包以及MyClassToExclude.class@ComponentScan( excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX, pattern ...原创 2018-01-19 13:31:01 · 473 阅读 · 0 评论 -
spring重定向
跟第三方.net对接他们要post到我们的登录页面在WEB-INF/web.xml中配置了welcome-file-list,就会默认加载login.html做为登录页面,并且只支持get请求 login.html web.ignoring().antMatchers("/login.html") http.formLogin().loginProce原创 2017-06-02 17:47:47 · 1221 阅读 · 0 评论 -
Spring Cloud使用心得
spring cloud使用心得笔记原创 2017-01-06 20:42:46 · 3627 阅读 · 0 评论