Java框架相关高频面试题
发布时间:2024年01月03日

一,Spring
1,Spring框架中单例bean是线程安全的吗?
?


2,什么是AOP?你项目有用过吗?

?

?
?
?3,Spring事务的失效场景有哪些?
- 发生自身调用(类中使用this调用本类的方法)
- 异常捕获处理
- 抛出检查异常
- 非public修改方法
- 数据库不支持事务



?4,Spring的声明周期
- 通过BeanDefinition读取Bean的定义信息
- 通过构造方法实例化对象
- 通过set方法进行依赖注入
- 一系列aware为后缀名的接口的方法实现
- BeanPostProcessor-before前置处理器执行
- 初始化方法执行
- BeanPostProcessor-after后置处理器执行
- bean销毁



5,Spring的循环引用

1,循环依赖产生的原理流程图:

2,三个等级缓存的作用

?3,一级缓存的加入(解决不了循环依赖)

4,二级缓存的加入(解决一般对象的循环依赖问题)
可以解决一般对象的循环依赖,被增强对象(代理对象)不能解决其循环依赖问题

?5,三级缓存的加入(解决代理对象循环依赖问题)

6,@Lazy注解的使用(解决构造方法出现的循环依赖问题)

?
?5,Spring的常见注解有哪些?
?6,SpringMVC的注解有哪些?

7,SpringBoot的常见注解有哪些?

8,SpringMVC的执行流程?
1,视图阶段


2,前后端分离阶段?


9,SpringBoot的自动配置原理

11,MyBatis的执行流程
1,加载MyBatis核心配置文件(数据库连接池必要的一些信息)和sql映射文件

?2,创建会话,执行sql等

?3,总结

文章来源:https://blog.csdn.net/weixin_51474578/article/details/131276986
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!