【面试准备】Spring、SpringMVC、Struts2、MyBatis、Hibernate工作原理

工作原理:Spring、SpringMVC、Struts2、MyBatis、Hibernate

致自己的面试准备题,加入自己以及整合其他人分享的,有些可能是流程!

1. Spring的工作原理

Spring是一个IOC和AOP的容器框架,IOC(控制反转),将控制权由对象本身转向容器,由容器去根据配置文件去创建实例并创建各个实例之间的依赖关系。AOP(面向切面编程),将公共逻辑和行为封装成一个切面,减少系统的重复代码,降低模块之间的耦合度,可以在不改变源代码的情况下新增功能。

2. SpringMVC的工作原理


用户发送请求到前端控制器,前端控制器委托请求给后台处理器,后台处理器调用业务对象,模型层返回模型数据给后台处理器,后台处理器返回ModelAndView给前端控制器,前端控制器进行视图渲染并返回控制,产生响应给用户。

3. Struts2的工作原理

1 客户端发送请求
2 经过一系列的过滤器
3 FilterDispatcher 被调用,FilterDispatcher询问ActionMapper来决定调用哪个Action
4 如果ActionMapper决定调用哪个Action后,FilterDispatcher将请求交给ActionProxy
5 ActionProxy根据配置文件去调用Action
6 ActionProxy创建ActionInvocation实例
7 Action调用完成后,ActionInvocation根据配置文件去返回对应的结果

4. MyBatis的工作原理

1 加载mybatis配置文件
2 创建SqlSessionFactory
3 创建SqlSession
4 事务控制
5 调用Mapper接口方法
6 关闭SqlSession

5. Hibernate的工作原理

1 加载配置文件
2 加载映射文件
3 创建SessionFactory
4 创建Session
5 开启事务
6 持久化操作
7 提交事务
8 关闭Session
9 关闭SessionFactory

你可能感兴趣的:(面试题集)