3、HelloSpring 思考 Hello 对象是谁创建的 ? 【 hello 对象是由Spring创建的 】 Hello 对象的属性是怎么设置的 ? 【hello 对象的属性是由Spring容器设置的 】 这个过程就叫控制反转 : 控制 : 谁来控制对象的创建 , 传统应用程序的对象是由程序本身 ...
分类:
编程语言 时间:
2019-12-12 15:25:59
阅读次数:
111
spring实现容器的全流程 基本流程如下: 上面是spring容器的一个基本使用,跟着代码追进去: 默认的构造方法,核心:refresh方法 基本流程: (1)创建ListableBeanFactory (2) 将xml中配置的bean加载到容器中(并不是完全体,只是BeanDinfiation) ...
分类:
编程语言 时间:
2019-12-11 17:26:34
阅读次数:
92
简介 Spring提供spring test 5.2.1.RELEASE.jar 可以整合junit。 优势:可以简化测试代码(不需要手动创建上下文,即手动创建spring容器) 使用spring和junit集成的步骤 1.导入jar包 2.创建包com.igeek.test,创建类SpringTe ...
分类:
编程语言 时间:
2019-12-08 15:52:46
阅读次数:
134
1、Bean的Scope Scope描述Spring容器是如何新建Bean实例的,通过@Scope("xxxx")注解实现 singleton:一个Spring容器只有一个Bean实例,为Spring的默认配置,全容器共享一个实例 默认注解为@Service等Bean默认都为单例的,如果是多服务器部 ...
分类:
编程语言 时间:
2019-12-08 14:08:58
阅读次数:
78
test下的包路径与main下的包路径保持一致。 测试程序使用@SpringBootTest和@RunWith(SpringRunner.class)注解, 启动测试类会从main下找springBoot启 动类,加载spring容器。 @SpringBootTest是一个用于测试的注解 @RunW ...
分类:
其他好文 时间:
2019-12-06 21:33:40
阅读次数:
139
2.3分区 前面我们将架构师比作城市规划师,那么在这个比喻里面,区域的概念对应的是什么呢? 它们应该是我们的服务边界,或者是一些粗粒度的服务群组。作为架构师,不应该过多关 注每个区域内发生的事情,而应该多关注区域之间的事情。这意味着我们应该考虑不同的 服务之间如何交互,或者说保证我们能够对整个系统的 ...
分类:
其他好文 时间:
2019-12-05 22:15:20
阅读次数:
119
说起spring bean的初始化自然而然就离不开初始化阶段的循环引用;1 首先spring容器在启动后会创建一个beanFactory,new DefaultListableBeanFactory。 2 然后在spring容器启动过程中会调用核心的refresh方法,在这个方法中共调用了9个方法, ...
分类:
编程语言 时间:
2019-12-05 13:07:07
阅读次数:
103
spring源码版本5.0.5 Spring容器创建之后,会调用它的refresh方法刷新Spring应用的上下文。 首先整体查看AbstractApplicationContext#refresh源码 prepareRefresh方法 表示在真正做refresh操作之前需要准备做的事情: 设置Sp ...
分类:
编程语言 时间:
2019-11-27 23:13:16
阅读次数:
114
今天写的Configuration类的@Value属性值为null 问题的原因: MapperScannerConfigurer实现了BeanDefinitionRegistryPostProcessor使得spring容器的执行的一些顺序问题,引起了上述@Value属性不能注入 解决方法: 将Ma ...
分类:
其他好文 时间:
2019-11-26 19:08:30
阅读次数:
424
RabbitTemplate是我们在与SpringAMQP整合的时候进行发送消息的关键类该类提供了丰富的发送消息的方法,包括可靠性消息投递、回调监听消息接口ConfirmCallback、返回值确认接口ReturnCallback等等同样我们需要注入到Spring容器中,然后直接使用。在与sprin ...
分类:
其他好文 时间:
2019-11-21 16:42:06
阅读次数:
97