spring
文章平均质量分 94
@来杯咖啡
物极必反,否极泰来,法天象地,以定位也.
展开
-
《精通Spring4.x 企业应用开发实战》第9章 Spring SpEL
Spring 动态语言(简称 SpEL)是一个支持运行时查询和操作对象图的强大的动态语言。其语法类似于 EL 表达式,具有诸如显式方法调用和基本字符串模板函数等特性。同其他的 Java 动态语言相比(如国外的 OGNL、MVEL 和 JBoss EL,国内的 Aviator、IKExpression 和 FastEL 等),SpEL 不但提供上述表达式的类似功能,而且更加简洁、灵活。加之出自 Spring 社区之手,与 Spring 框架及其子项目的结合显得更加顺畅自然。原创 2023-03-08 17:12:55 · 531 阅读 · 0 评论 -
【Spring学习】FactoryBean的使用
FactoryBean 接口对于 Spring 框架来说占有重要的地位,Spring 自身就提供了 70 多个FactoryBean 的实现。它们隐藏了实例化一些复杂 bean 的细节,给上层应用带来了便利。一般情况下,Spring 通过反射机制利用 bean 的 class 属性指定实现类来实例化 bean。在某些情况下,实例化 bean 过程比较复杂,如果按照传统的方式,则需要在中提供大量的配置信息,配置方式的灵活性是受限的,这时采用编码的方式可能会得到一个简单的方案。原创 2023-03-05 23:20:13 · 2823 阅读 · 0 评论 -
【Spring源码系列】Bean生命周期-依赖注入
依赖注入源码:依赖注入流程:1、我们演示通过自动注入-byName的方式进行 属性依赖注入;这个name指的是UserService中set方法后面的名称,也就是setOrderService的orderService;2、通过@Bean(autowire = Autowire.BY_NAME/BY_TYPE)的自动注入方式在真正进行属性依赖注入前,会调用unsatisfiedNonSimpleProperties方法进行过滤(如果是简单类型,则不会注入。但是如果是通过@Autowired注原创 2022-12-04 23:40:48 · 425 阅读 · 0 评论 -
【Spring源码系列】Bean生命周期-Bean销毁
Spring给我们提供了一种当的方式。那么,Spring底层到底是如何实现的呢?接下来,我们将从源码+案例的方式来解析:spring如何实现当bean销毁时调用某个方法的。当的时候(调用close())方法的时候,那么对于实现destroy方法的bean,就会开始执行各自自定义的销毁逻辑。提示:是spring容器关闭的时候调用bean销毁逻辑,不是垃圾回收、程序意外终止、程序正常终止…的时候。1、。在‘初始化后’会对BeanDefinition进行判断,判断该BeanDefinition是否具备destr原创 2022-12-04 16:39:47 · 4381 阅读 · 0 评论 -
【Spring源码系列】Bean生命周期-实例化前
在Bean的生命周期中,‘实例化前’操作是借助InstantiationAwareBeanPostProcessor接口实现的。 提供的两个方法是:初始化前、初始化后。很多类实现BeanPostProcessor,且基于BeanPostProcessor类做了些扩展,比如InstantiationAwareBeanPostProcessor类,在此基础上扩展了实例化前、实例化后;1、InstantiationAwareBeanPostProcessor继承BeanPostProcessor并且在此基础上扩原创 2022-12-03 14:19:01 · 944 阅读 · 0 评论 -
【Spring源码系列】Spring注解扫描-@ComponentScan底层原理解读
众所周知,@ComponentScan注解的作用是:将项目中所有被@Component注解标记的类,组装成BeanDefinition,然后以key value的形式注入到IOC容器中。原创 2022-12-01 22:21:38 · 3145 阅读 · 0 评论