Spring
文章平均质量分 76
生命不息战斗不止!(王子晗)
面壁十年图破壁,难酬蹈海亦英雄。
展开
-
Spring中的Bean是线程安全的吗(超全面,建议收藏)
Spring容器中的Bean是否线程安全,容器本身并没有提供Bean的线程安全策略,因此可以说Spring容器中的Bean本身不具备线程安全的特性,所以要结合bean的具体scope取值和bean的类型去考虑Spring 的 bean 作用域(scope)类型单实例模式singleton:是scope的默认值,在容器初始化时就已经加载并实例化了所有组件,之后程序中使用组件直接去容器中拿,无论调用多少次最终拿到的都是同一个对象,很像单例模式原型模式prototype:容器初始化时不实例化组件,之后每原创 2021-03-29 11:48:11 · 527 阅读 · 1 评论 -
AOP五大通知注解详解
1.前置通知在目标方法执行之前执行执行的通知。前置通知方法,可以没有参数,也可以额外接收一个JoinPoint,Spring会自动将该对象传入,代表当前的连接点,通过该对象可以获取目标对象 和 目标方法相关的信息。注意,如果接收JoinPoint,必须保证其为方法的第一个参数,否则报错。2.后置通知在目标方法执行之后执行的通知。在后置通知中也可以选择性的接收一个JoinPoint来获取连接点的额外信息,但是这个参数必须处在参数列表的第一个。在后置通知中,还可以通过配置获取返回值3.异常通知原创 2021-02-03 18:43:12 · 5036 阅读 · 1 评论 -
AOP Error creating bean with name ‘myCaculator‘ defined in file [XXX]
大家看一下详细报错org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘myCaculator’ defined in file [C:\Users\20289\Desktop\workspace\Spring\out\production\SpringTest\caculator\noInterface\MyCaculator.class]: Initialization of be原创 2021-02-03 16:43:09 · 583 阅读 · 2 评论 -
Spring AOP概念、原理、应用(日志、事务案例),对比传参jdk代理模式
AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。AOP是指在程序运行期间,将代码(如日志类型的代码)动态的切入到指定方法中的指定位置(核心业务方法运行位置的前面,后面,异常,finally结束)来运行,目的是避免这种日志类的代码和核心业务代码耦合,增强了可维护性和扩展性。使用“横切”技术,AOP把软件系统分为两个部分:核心关注点和横切关注点。业务处理的主要流程是核心关注点,与之关原创 2021-02-03 15:57:26 · 557 阅读 · 2 评论 -
传统动态代理实现计算器类日志功能
1 接口public interface Caculator { public int add(int op1, int op2); public int sub(int op1, int op2); public int mul(int op1, int op2); public int div(int op1, int op2);}2 日志工具类/*1 这个日志工具类用了反射的思维,有四个不同的方法对应着核心方法的四个重要的位置,分别是运行前,运行后,被捕获原创 2021-02-03 09:54:38 · 588 阅读 · 1 评论 -
最易懂的Spring IOC原理讲解
一、 IOC思想IOC:控制反转Inversion Of Controller,控制即获取资源的方式;反转即颠倒的意思,意味着是该思想是对原先操作过程的逆转,即由主动的创建(对象为主的资源)变为被动的接收(对象为主的资源)。有以下几个难点谁控制谁?传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IOC是有专门一个容器来创建这些对象,即由IOC容器来控制对象的创建,也就是IOC容器控制了对象控制了什么(IOC容器的特点与功能)? IOC容器负责实例化、原创 2021-02-02 23:26:36 · 1035 阅读 · 0 评论