学习总结:Spring

  • Spring的AOP IOC Spring AOP和IOC的底层实现 使用场景

AOP:面向切面编程,在目标对象周围织入通知。基于动态代理实现,有两种实现方式,一个是JDK动态代理,一个是cglib动态代理。

使用场景:事务管理器,拦截器

IOC:控制反转,就是以前对象需要程序员自己new,现在spring帮我们建立对象并进行管理。

对象通过依赖注入或自动装配来配置,有setter注入,注解注入,构造器注入,工厂注入。自动装配有根据参数名,参数类型,构造器参数类型装配等。

  • Spring中的bean对象默认是单例还是非单例?如何配置非单例bean

单例,更换bean的作用域,用prototype,还可以使用request,session,globalsession,后面三个只能在Web中使用。

  • spring如何配置事务

1声明式事务

1.1 如果是xml配置

配置核心事务管理器

配置通知

配置将通知织入目标

1.2 如果是注解配置

开启注解管理事务‘

使用注解

2 编码方式实现

  • Spring 声明式事务如何实现。

使用AOP,使用一个事务拦截器在方法调用的前后进行事务性增强。

  • Spring中的事务管理

事务实现方法(编码式,声明式(注解,xml配置)) 实现原理

事务传播机制(7种,默认是required)

事务隔离级别(5种,默认+4个)

  • Spring事务传播机制

spring的事务传播级别有7种,其中最常用的就是默认的required级别。就是如果存在事务,就加入到事务中执行,如果没有,就新建一个事务执行。

  • AOP的切点怎么切

使用动态代理

  • Spring注解。

注册 @Controller @Service @Component

注入 @Autowired @Resource

请求地址 @RequstMapping

  • spring中用到的设计模式

单例模式 spring中的bean对象默认是单例

工厂模式 spring的beanfactory就是工厂模式中的简单工厂模式

代理模式 aop

  • Spring特点

轻量级MVC框架

容器 管理对象的配置和生命周期

还有控制反转和面向切面的特性

提供事务管理,异常处理

  • spring管理的bean有哪些模式,spring默认的是什么模式

单例模式,多例模式,request,session,global-session(后面三种是在web环境下)

单例模式

  • Spring 都有哪几种注入方式(Spring配置bean实例化哪些方式),什么情况下用哪种

setter方法注入

注解注入

构造器注入(要在构造方法里赋值)

工厂注入

  • spring的aop原理,类别 区别 常用哪一个

基于动态代理

JDK动态接口代理,cglib动态代理

JDK通过接口来创建代理实例,cglib则是通过继承来创建代理实例。

一般用JDK动态代理

  • 拦截器?拦截器用来做什么?哪些场景需要用拦截器?

知道 本质上也是aop

在目标对象周围增强通知

日志记录

性能监控

权限检查 -通过拦截器判断用户是否登录

  • spring如何管理bean?

使用applicationContext管理bean

  • Spring中bean的生命周期

1 实例化创建对象

2 依赖注入,配置bean

3 中间一堆方法

4 销毁

  • BeanFactory和ApplicationContext的关系?

ApplicationContext比BeanFactory功能更完善,增加了aop,事务等功能。

发布了41 篇原创文章 · 获赞 15 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/ScanQ/article/details/89222476