Spring
文章平均质量分 78
newcih
https://gitee.com/newcih/galois
展开
-
Spring面试
BeanFactory和ApplicationContext是Spring的两大核心接口,都可以当作Spring的容器。Spring容器不缓存prototype类型的Bean,使得无法提前暴露出一个创建中的Bean。IOC容器把对象注入进去的时候,已经不是原生对象,而是代理对象了。上下文更新事件 (ContextRefreshedEvent)A的构造方法中依赖了B的实例对象,同时B的构造方法中依赖了A。上下文开始事件 (ContextStartedEvent),所以不能继承用户类,而只能是实现用户的接口。原创 2024-02-03 12:11:23 · 770 阅读 · 0 评论 -
【Galois工具开发之路】SpringApplicationRunListener在SpringBoot项目启动过程中执行了两次...
SpringApplicationRunListener 接口的作用主要就是在Spring Boot 启动初始化的过程中可以通过SpringApplicationRunListener接口回调来让用户在启动的各个流程中可以加入自己的逻辑。比如以下的方法Galois通过注入各种Listener到SpringBoot的启动监听器列表中,实现了SpringBoot启动后初始化各种AgentService的功能。原创 2023-04-01 15:24:33 · 1096 阅读 · 1 评论 -
【Galois工具开发之路】关于类的重新装载思路
Galois 通过监听项目代码变更,使用 redefineClasses 方法来重新装载类,并通过 ASM 侵入 SpringBoot 框架 和 MyBatis 框架核心代码的方式,获取到能重新装载。当一个java的类文件发生变更,如果动态的热更新这个新的类文件?目前来说,有两种可能的方式。的核心对象,以此实现项目的代码热部署更新。原创 2023-03-09 20:18:59 · 720 阅读 · 0 评论 -
由Spring的@RequestParam的name属性引发的一系列小事记
起因 项目里面使用了SpringBoot(版本是2.0.0.M2,记住这个版本号~),有一次在倒腾了开发软件IDEA之后,发现IDEA启动的项目运行失败了(记住这个IDEA启动~),原本正常的Controller接口的某个方法,突然在请求时,报出如下错误: 项目代码没动,就只是倒腾了IDEA,重装了一下,你就给我看这个? 经过 搜某度,得其解,仅需开启某配置项(generate debugging info,Eclipse也有对应的配置,名字不同)如下图所示即可(这配置模式的确是开启的,只是重装IDEA后原创 2020-07-09 14:05:05 · 6350 阅读 · 1 评论