随笔分类 -  spring源码

1
摘要:spring 整合mybatis和OpenFeign时,都是通过接口来实现的,如: @Repository public interface OrderMapper { int deleteByPrimaryKey(Long codId); } @FeignClient("coupon") publ 阅读全文
posted @ 2022-09-11 12:58 yangxiaohui227 阅读(182) 评论(0) 推荐(0) 编辑
摘要:1.bean的生命周期:Class-》推断构造器-》实例化-》属性赋值-》初始化-》aop-》bean 2. 单例bean和单例模式的区别:单例模式只会有一个实例对象,单例Bean可以有多个实例对象,但一个beanName只能对应一个实例对象 3.@Autowried注解:先byType-》在byN 阅读全文
posted @ 2021-11-26 16:01 yangxiaohui227 阅读(40) 评论(0) 推荐(0) 编辑
摘要:springcloud的注册中心都会跟ribbon进行整合进行负载均衡,既然要进行负载均衡,那么就需要进行服务列表的发现,而ribbon为了让每个注册中心进行整合,提供了一个抽象类:AbstractServerList 可以参考我的ribbon源码分析:Ribbon源码分析(二)-- 服务列表的获取 阅读全文
posted @ 2021-08-05 16:41 yangxiaohui227 阅读(268) 评论(0) 推荐(0) 编辑
摘要:一.背景:spring提供了@Async异步注解,使得方法的调用可以异步的进行,下面代码提供简单的演示: @Configuration @EnableAsync @ComponentScan("com.yang.xiao.hui.aop") public class App { public sta 阅读全文
posted @ 2021-05-31 16:13 yangxiaohui227 阅读(10286) 评论(3) 推荐(4) 编辑
摘要:一背景:先看如下代码,然后思考问题 @Service public class MyService { public void doTest(){ this.doTest2(); } @Transactional public void doTest2(){ this.doTest3(); } @T 阅读全文
posted @ 2021-04-16 12:01 yangxiaohui227 阅读(373) 评论(0) 推荐(0) 编辑
摘要:一.最原始的使用jdbc连接mysql: maven依赖只要一个: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version> </depe 阅读全文
posted @ 2020-10-12 12:11 yangxiaohui227 阅读(111) 评论(0) 推荐(0) 编辑
摘要:.测试项目,随便一个简单的springboot项目即可: 直接debug调试: 可见,分2步,第一步是创建SpringApplication对象,第二步是调用run方法: 1.SpringApplication对象的创建过程: public SpringApplication(ResourceLoa 阅读全文
posted @ 2020-09-29 10:25 yangxiaohui227 阅读(278) 评论(0) 推荐(0) 编辑
摘要:1.测试代码,一个简单的springboot web项目:地址:https://gitee.com/yangxioahui/demo_mybatis.git 一:tomcat的主要架构:1.如果我们下载了tomcat的安装包,可以在解压后的文件夹看到server.xml文件: 内容如下: <?xml 阅读全文
posted @ 2020-09-27 17:19 yangxiaohui227 阅读(1151) 评论(0) 推荐(0) 编辑
摘要:之前的博客专门分析了一个类到BeanDefinition的创建过程,现在分析BeanDefinition 到一个bean的创建过程:从refresh() 方法的 >finishBeanFactoryInitialization(beanFactory) 开始: protected void fini 阅读全文
posted @ 2020-08-05 11:46 yangxiaohui227 阅读(291) 评论(0) 推荐(0) 编辑
摘要:背景: 在spring ioc refresh()方法中,看到了如下逻辑: 要理解该逻辑的原理,先看场景:有个接口InterFaceA,它有2个实现类A1和A2 那么,如果一个类C 依赖了InterFaceA,此时sprig不知道要注入哪个实现类: public interface InterFac 阅读全文
posted @ 2020-08-01 11:41 yangxiaohui227 阅读(1147) 评论(0) 推荐(0) 编辑
摘要:测试环境代码: @Configuration @ComponentScan("com.yang.xiao.hui.ioc") @Conditional(MyCondition.class) public class App { public static void main( String[] ar 阅读全文
posted @ 2020-07-31 17:22 yangxiaohui227 阅读(216) 评论(0) 推荐(0) 编辑
摘要:一.测试环境的搭建: public class Apple { } @Component public class MyComponet { } public class MyCondition implements Condition { @Override public boolean matc 阅读全文
posted @ 2020-07-30 16:32 yangxiaohui227 阅读(565) 评论(0) 推荐(0) 编辑
摘要:在上一篇aop源码分析时,我们已经分析了一个bean被代理的详细过程,参考:https://www.cnblogs.com/yangxiaohui227/p/13266014.html 本次主要是分析目标方法的执行过程: 测试代码在git : https://gitee.com/yangxioahu 阅读全文
posted @ 2020-07-09 12:50 yangxiaohui227 阅读(244) 评论(0) 推荐(0) 编辑
摘要:测试项目已上传到码云,可以下载:https://gitee.com/yangxioahui/aopdemo.git 具体如下: public interface Calc { Integer add(int num1,int num2); }//目标是对add 方法进行切入 @Component p 阅读全文
posted @ 2020-07-08 11:36 yangxiaohui227 阅读(329) 评论(0) 推荐(0) 编辑
摘要:测试环境搭建: 本次搭建是基于springboot来实现的,代码在码云的链接:https://gitee.com/yangxioahui/thymeleaf.git DispatcherServlet核心流程在上一篇源码分析已经做了详细讲解 了,参考: https://www.cnblogs.com 阅读全文
posted @ 2020-07-04 15:27 yangxiaohui227 阅读(913) 评论(0) 推荐(0) 编辑
摘要:测试环境搭建: 本次搭建是基于springboot来实现的,代码在码云的链接:https://gitee.com/yangxioahui/thymeleaf.git 项目结构代码如下: 一: controller的三种实现方式: 1. 第一种是大家非常熟悉的,使用@Controller和@Reque 阅读全文
posted @ 2020-07-03 11:33 yangxiaohui227 阅读(293) 评论(0) 推荐(0) 编辑
摘要:一. servlet 3.0 的使用 1.1 环境搭建: servlet跟spring没有任何关系,我创建一个servlet可以不依赖spring,现在搭建一个纯的servlet项目,并实现简单的类似springMVC的功能: 引入依赖: <dependency> <groupId>javax.se 阅读全文
posted @ 2020-06-24 15:27 yangxiaohui227 阅读(768) 评论(0) 推荐(0) 编辑
摘要:1.测试环境搭建: 1.1 架构图: product服务提供一个接口: order服务通过feign的方式来调用product的接口: order服务需要引入依赖: <dependency> <groupId>org.springframework.cloud</groupId> <artifact 阅读全文
posted @ 2020-05-26 14:19 yangxiaohui227 阅读(2193) 评论(0) 推荐(0) 编辑
摘要:ConfigurationClassBeanDefinition 是ConfigurationClassBeanDefinitionReader的静态内部类 阅读全文
posted @ 2019-12-14 15:35 yangxiaohui227 阅读(457) 评论(0) 推荐(0) 编辑
摘要:1.先看如下demo: B和A相互循环依赖 @Component public class B { @Autowired private A a; } @Component public class A { @Autowired private B b; } 启动项目:结果没有报错: 2. 加入异步 阅读全文
posted @ 2019-03-13 14:45 yangxiaohui227 阅读(17225) 评论(0) 推荐(10) 编辑

1
点击右上角即可分享
微信分享提示