![](https://img-blog.csdnimg.cn/20191216155705594.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Spring
spring
软件求生
这个作者很懒,什么都没留下…
展开
-
Spring:常用的设计模式。
spring中常用的设计模式。转载 2020-03-18 11:04:08 · 134 阅读 · 0 评论 -
面向横切面编程(Aspect Oriented Programming)。
什么是动态代理?动态代理就是在实现阶段不用关心代理谁,而在运行阶段才指定代理哪个对象。具体说明动态代理是根据被代理的接口生成所有的方法,也就是说给定一个接口,动态代理会宣称“我已经实现该接口的所有方法了”。面向切面变成(AOP),其核心就是采用了动态代理机制。AOP编程没有使用什么新的技术,但是它对我们的设计、编码有非常大的影响,对于日志、事务、权限等都可以在系统设计阶段不用考虑,而在设计...转载 2017-08-09 23:35:46 · 1061 阅读 · 0 评论 -
spring项目启动完成后,自动执行一次某个特定方法。
spring项目启动完成后,自动执行一次某个特定方法。转载 2017-11-20 10:56:35 · 16125 阅读 · 1 评论 -
Spring的骨骼架构。
Spring总共有十几个组件,但是真正核心的组件只有几个,下图是Spring框架的总体架构图。从上图中可以看出,在Spring框架中核心组件只有三个:Core、Context和Bean。他们构建器了整个Spring的骨骼架构,没有他们就不可能有AOP、Web等上层的特性功能。Spring的设计理念前面介绍了Spring的三个核心组件,如果要在他们三个中选出核心,那就非Bean组件莫...转载 2018-08-16 11:40:38 · 362 阅读 · 0 评论 -
Spring核心组件详解。
Bean组件Bean组件在Spring的org.springframework.beans包下。在这个包下的所有类主要解决了3件事:Bean的定义、Bean的创建及对Bean的解析。对Spring的使用者来说唯一需要关心的就是Bean的创建,其他两个由Spring在内部帮你完成,对你来说是透明的。Spring Bean的创建是典型的工厂模式,他的顶级接口是BeanFactory。Bea...转载 2018-08-16 14:43:15 · 1697 阅读 · 0 评论 -
Ioc容器如何工作。
如何创建BeanFactory工厂Ioc容器实际上是Context组件结合其他两个组件共同构建了一个Bean关系网,如何构建这个关系网?构建的入口就在AbstractApplicationContext类的refresh方法中,这个方法的代码如下:public void refresh() throws BeansException, IllegalStateException { ...转载 2018-08-16 15:52:25 · 733 阅读 · 0 评论 -
Spring中的AOP的特性详解。
动态代理的实现原理要了解Spring的AOP就必须先了解动态代理的原理,因为AOP就是基于动态代理实现的。动态代理要从JDK本身说起。在JDK的java.lang.reflect包下有个Proxy类,他正是构造代理类的入口。该类有一个方法newProxyInstance就是创建代理对象的方法。这个方法需要3个参数:ClassLoader,用来加载代理类的Loader类,通常这个Lo...转载 2018-08-16 16:59:43 · 2396 阅读 · 0 评论 -
Spring:单元测试。
先说一个结论:单元测试与主项目的spring容器是隔离的,也就是说,单元测试无法访问主项目spring容器,需要自己加载spring容器。接下来是代码实例,WEB主项目出于运行状态,单元测试中可能会看到如下这样的代码:代码一:当前类加载式public class TestSpring { @Test public void testSpring(){ ...转载 2019-01-09 00:35:38 · 614 阅读 · 0 评论 -
Spring:ioc原理。
最近,买了本Spring入门书:spring In Action 。大致浏览了下感觉还不错。就是入门了点。Manning的书还是不错的,我虽然不像哪些只看Manning书的人那样专注于Manning,但怀着崇敬的心情和激情通览了一遍。又一次接受了IOC 、DI、AOP等Spring核心概念。 先就IOC和DI谈一点我的看法。IOC(DI):其实这个Spring架构核心的概念没有这么复杂,更不像...转载 2019-04-15 15:36:37 · 91 阅读 · 0 评论 -
spring:反射获取一个方法中的参数名(不是类型)。
一般来说,通过反射是很难获得参数名的,只能取到参数类型,因为在编译时,参数名有可能是会改变的,需要在编译时加入参数才不会改变。使用注解是可以实现取类型名(或者叫注解名)的,但是要写注解,并不方便。观察Spring mvc框架中的数据绑定,发现是可以直接把http请求中对应参数绑定到对应的参数名上的,他是怎么实现的呢?先参考一下自动绑定的原理:Spring源码研究:数据绑定在getM...转载 2019-04-30 13:36:01 · 3857 阅读 · 0 评论 -
获取XML的验证模式。
最近在研究Spring源码,博文中的内容来源《Spring源码深度解析》这一本书,感激不尽。转载 2017-05-23 20:47:46 · 1019 阅读 · 0 评论 -
JDK和CGLIB生成动态代理类的区别。
JDK和CGLIB生成动态代理类的区别。转载 2017-06-05 20:23:37 · 563 阅读 · 0 评论 -
Spring的整体架构
最近在研究Spring源码,博文中的内容来源《Spring源码深度解析》这一本书,感激不尽。转载 2017-06-17 14:40:48 · 394 阅读 · 0 评论