20200116——java最常见200+面试题 二

为什么使用spirng
spring提供ioc,容器会帮助你管理对象,从而不需要自己去创建对象和管理依赖对象了,更轻松的实现了程序的解耦
spring提供了事务支持,使得事务操作变得更加方便
spring提供了面向切片编程,这样可以方便的处理某一类问题


什么是aop
aop是面对对象切片编程,通过预编译方式和运行期动态代理实现功能的统一维护的一种技术
简单的来说就是统一处理某一切面类的问题的编程思想,比如统一处理日志,异常等


什么是ioc
ioc是控制反转inversionof control 是spring的核心,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系
控制指的是当前对象内部成员的控制权,控制反转指的是,这种控制权不由当前对象进行管理了,由第三方类和容器进行管理


spring有哪些主要模块
spring core 框架最基础的部分,提供ioc和依赖注入
spring context 构建core封装包基础上的context封装包,提供了一种框架式的对象访问方法
spring dao Data Access Object提供了JDBC抽象层
spring aop 提供了面向切片的编程实现,让你可以自定义拦截器、切点
spring web 提供了web的开发的集成的特性,例如文件上传,利用servlet listeners进行对ioc容器初始化和针对web的ApplicationContext


spring常用的注入方式
构造函数注入
setter方法注入
注解注入


bean的作用域
基本上只用到了singleton表示单例模式,prototype多例模式


spring的事务隔离
spring有五大事务隔离级别,默认值是ISOLATION_DEFAULT(使用数据库的设置),其他四个隔离级别和数据库的隔离级别一致
ISOLATION_DEFAULT:用底层数据库的设置隔离级别,数据库设置的是什么我就用什
么;
ISOLATIONREADUNCOMMITTED:未提交读,最低隔离级别、事务未提交前,就可被其
他事务读取(会出现幻读、脏读、不可重复读);
ISOLATIONREADCOMMITTED:提交读,一个事务提交后才能被其他事务读取到(会造
成幻读、不可重复读),SQL server 的默认级别;
ISOLATIONREPEATABLEREAD:可重复读,保证多次读取同一个数据时,其值都和事务 开始时候的内容是一致,禁止读取到别的事务未提交的数据(会造成幻读),MySQL 的默
认级别;
ISOLATION_SERIALIZABLE:序列化,代价最高最可靠的隔离级别,该隔离级别能防止脏
读、不可重复读、幻读。

发布了657 篇原创文章 · 获赞 39 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_36344771/article/details/104002772