【框架-Spring】
文章平均质量分 85
【入门SSM和实战】
我一直在流浪
这个作者很懒,什么都没留下…
展开
-
Spring题集 - Spring AOP相关面试题总结
在BeanPostProcessor的after方法中使用动态代理对Bean进行增强,实际存储到单例池singleObjects中的不是当前目标对象本身,而是当前目标对象的代理对象Proxy,这样在调用目标对象方法时,实际调用的是代理对象Proxy的同名方法,起到了目标方法前后都进行增强的功能。需要注意的是,Spring AOP 和 AspectJ AOP 都是 AOP 的实现方式,它们可以互相补充,例如可以使用 Spring AOP 来拦截方法调用,使用 AspectJ AOP 来拦截类的初始化等操作。原创 2023-04-01 20:57:31 · 735 阅读 · 0 评论 -
Spring题集 - Spring 注解相关面试题总结
}用指定Spring容器扫描的包路径。它可以自动扫描指定包及其子包下的所有类,并将标记为@Component、@Controller、@Service、@Repository等注解的类注册为Spring容器中的Bean。如果不加@Component注解,那么OtherBean就不会被Spring容器扫描注册,dataSource也不会注册为Spring容器的bean了。原创 2023-03-25 16:28:31 · 1385 阅读 · 0 评论 -
Spring题集 - Spring Bean实例相关面试题总结
一个Spring Bean定义包含以下元素:① Bean的唯一标识符(ID):每个Bean都必须有一个唯一的ID,用于在Spring容器中标识该Bean。② Bean的类:指定要在Spring容器中创建的Bean的类。③ Bean的作用域(Scope):指定Bean的生命周期和可见范围。④ Bean的依赖关系:指定Bean与其他Bean之间的依赖关系,包括构造函数注入、Setter方法注入等。⑤ Bean的属性值:指定Bean的属性值,包括基本类型、引用类型、集合类型等。原创 2023-03-16 07:41:31 · 493 阅读 · 0 评论 -
Spring题集 - Spring IoC容器相关面试题总结
Spring IOC容器是Spring框架的核心部分之一,它负责管理应用程序中的对象及其依赖关系。IOC 是一种设计模式,通过将对象的创建和依赖关系的管理交给容器来实现,从而降低了组件之间的耦合度,提高了代码的可维护性和可测试性。在 Spring 中,IOC 容器负责创建和管理 Bean 对象,Bean 是指在Spring 容器中被管理的对象。容器会根据配置文件或注解来创建Bean对象,并将它们注入到需要它们的地方。原创 2023-03-11 20:54:18 · 689 阅读 · 0 评论 -
Spring题集 - Spring 框架概述相关面试题总结
Spring 是一个轻量级的 Java EE 开发框架,是针对bean的生命周期进行管理的轻量级容器。它的目的主要是为了简化Java EE的企业级应用开发,解决了开发者在J2EE开发中遇到的许多常见的问题,提供了IOC、AOP 及Web MVC等功能。原创 2023-03-08 07:47:40 · 539 阅读 · 0 评论 -
Spring - 提供依赖注入服务的 IoC Service Provider
虽然业务对象可以通过IoC方式声明相应的依赖,但是最终仍然需要通过某种角色或者服务将这些相互依赖的对象绑定到一起,而IoC Service Provider就对应IoC场景中的这一角色。IoC Service Provider在这里是一个抽象出来的概念,它可以指代任何将IoC场景中的业务对象绑定到一起的实现方式。它可以是一段代码,也可以是一组相关的类,甚至可以是比较通用的IoC框架或者IoC容器实现。Spring的IoC容器就是一个提供依赖注入服务的IoC Service Provider。IoC Serv原创 2022-06-12 21:57:39 · 339 阅读 · 0 评论 -
Spring - 什么是依赖注入?有几种方式?
这个问题和 是一样的。IoC 的全称为Inversion of Control,中文通常翻译为“控制反转”,它还有一个别名叫做依赖注入(DependencyInjection)。那么,为什么需要IoC?IoC的具体意义是什么?它到底有什么独到之处?看,这就是我们通常的做事方式!如果我们依赖于某个类或服务,最简单而有效的方式就是直接在类的构造函数中新建相应的依赖类。这就好比要装修新房,需要用家具,这个时候,根据通常解决对象依赖关系的做法,我们就会直接打造出需要的家具来(通过new构造对象)。我们需要自己原创 2022-06-12 21:40:54 · 771 阅读 · 0 评论 -
Spring - 为什么需要IoC?IoC的具体意义是什么?
我们的理念是:让别人为你服务!IoC 的全称为Inversion of Control,中文通常翻译为“控制反转”,它还有一个别名叫做依赖注入(DependencyInjection)。那么,为什么需要IoC?IoC的具体意义是什么?它到底有什么独到之处?看,这就是我们通常的做事方式!如果我们依赖于某个类或服务,最简单而有效的方式就是直接在类的构造函数中新建相应的依赖类。这就好比要装修新房,需要用家具,这个时候,根据通常解决对象依赖关系的做法,我们就会直接打造出需要的家具来(通过new构造对象)。我们需原创 2022-06-12 18:38:09 · 1416 阅读 · 0 评论 -
Spring源码 - 简易版 Spring IOC 容器的实现
2. 自定义注解 @Service3. 自定义注解 @Repository4. 自定义注解 @Component2. ClassUtil 工具类封装1. 获取类加载器2. 获取扫描包下的类集合测试:输出:4. 设置类的属性值3. 单例模式1. 恶汉模式2. 懒汉模式3. 枚举方式实现单例4. 容器 BeanContainer1. 获取Bean容器实例2. 扫描加载所有Bean测试:3. 容器的增删改查操作测试:.................原创 2022-06-09 09:21:35 · 262 阅读 · 0 评论 -
Spring源码 - 手写精简版 Spring IOC 容器
① OrderDao :② 在OrderService中注入OrderDao对象:③ 定义配置类,扫描注解所在的包:④ 测试:2. Spring Bean的生命周期2. 自定义 @Scope 注解3. 自定义 @ComponentScan 注解4. 自定义注解 @Autowired 注解5. 自定义 BeanDefinition6. 自定义 InitializingBean7. 自定义 BeanPostProcessor8. 自定义 AnnotationCon原创 2022-06-05 17:57:46 · 280 阅读 · 0 评论 -
Spring源码 - Spring IOC 概念和底层原理
文章目录1. 通过反射创建对象2. 工厂模式定义3. IOC底层原理简述1. 通过反射创建对象反射是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。java.lang.reflect 包下的反射 API:Class类:代表一个类,位于 java.lang 包下Field类:代表类的成员变量Method类:代表类的方法Constructor类:代表类的构原创 2022-05-29 16:37:34 · 269 阅读 · 0 评论 -
Spring源码 - Spring源码下载与编译
这个编译需要很多条件:idea版本jdk版本kotlin版本gradle版本很有可能版本不一致导致编译不成功,最终参考了这篇博,搞定了https://blog.csdn.net/wuqixiufen2/article/details/118681992?spm=1001.2014.3001.5502原创 2022-05-22 15:04:06 · 193 阅读 · 0 评论 -
Spring - 事务失效的场景
文章目录1. 数据库事务1.1 事务的ACID特性1.2 多事务的并发进行造成的问题1.3 MySQL事务的隔离级别1.4 Spring事务的传播特性1.5 Spring事务的失效场景1.5.1 本类中没有事务的方法调用含有事务的方法1.5.2 rollbackFor属性使用错误1.5.3 出现异常后被捕获处理了1. 数据库事务1.1 事务的ACID特性事务的概念:事务是由N步数据库的操作序列组成的逻辑单元,这系列操作要么全部执行,要么全部放弃;① 原子性:事务开始执行,要么全部执行成功,要么全部执原创 2020-08-11 14:38:25 · 2958 阅读 · 1 评论 -
Spring - 事务管理
文章目录2、事务管理1、事务的隔离级别?1、事务概念2、事务的四大特性3、事务的隔离级别2、Spring 事务的传播行为?1、接口介绍2、事务的传播特性3、Spring业务层不使用事务4、Spring编程式事务5、Spring声明式事务1、基于TransactionProxy FactoryBean的方式2、基于Aspetj的xml方式3、基于注解的方式2、事务管理1、事务的隔离级别?1、事务概念事务就是由N步数据库操作序列组成的逻辑执行单元,这系列操作要么全部执行(事务提交)要么全部放弃(事务回滚原创 2020-05-10 18:30:33 · 631 阅读 · 2 评论 -
Spring - 获取JDBCTemplate对象
1、JDBC与JDBCTemplate关系Java程序员在以后的工作中很重要的一点就是得和数据库打交道,但是代码和数据库是两个不相干的。怎么使用代码对数据库进行操作呢,这个时候就用到JDBC。JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。而template,就是模板,是Spring框架为我们提供的.所以JDBCTemplate就是Spring对J原创 2020-05-10 15:12:33 · 1917 阅读 · 0 评论 -
Spring - AOP实现原理
文章目录Spring AOP的实现原理?1、JDK动态代理2、Cglib动态代理Spring AOP的实现原理?动态代理: 1、JDK动态代理(基于接口的动态代理—对对象进行代理) 2、Cglib动态代理(基于子类的动态代理—对类进行代理)JDK的动态代理机制只能代理实现了接口的类,而没有实现接口的类不能实现JDK的动态代理1、JDK动态代理public interface Pr...原创 2020-05-06 10:18:18 · 395 阅读 · 0 评论 -
Spring - Bean的生命周期
文章目录Spring Bean的生命周期1、示例引入1、定义bean2、后置处理器13、后置处理器24、beans.xml的配置5、注册两个后置处理器2、BeanFactory中bean的生命周期3、ApplicationContext中bean的生命周期Spring Bean的生命周期1、示例引入1、定义bean//定义一个Car,实现Bean的4个生命周期级接口public clas...原创 2020-05-02 21:24:37 · 346 阅读 · 0 评论 -
Spring - IOC容器基本实现
文章目录1、Spring IOC容器实现源码1、配置文件的封装:Resource接口2、XMLBeanFactory的初始化3、加载(读取)配置文件:XmlBeanDefinitionReader4、解析及注册BeanDefinitions2、手写一个Spring IOC容器1、Spring IOC容器实现源码1、配置文件的封装:Resource接口Resource资源抽象接口:来封装底层资...原创 2020-05-02 08:04:28 · 526 阅读 · 1 评论 -
Spring - 注解源码解析
文章目录Spring IOC注解解析一、组件注册的几种方式1、@Configuration注解2、@ComponentScan注解1、自动扫描组件2、指定扫描规则3、自定义FilterType指定过滤规则3、@Scope注解4、@Lazy注解5、@Import注解1、使用类名导入组件2、ImportSelector3.ImportBeanDefinitionRegistrar6、FactoryBe...原创 2020-04-28 15:00:32 · 1829 阅读 · 0 评论