Spring框架
- Spring是什么?它解决了什么问题?
- Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。它解决了企业应用开发的复杂性,通过依赖注入降低了代码之间的耦合度,提高了代码的可重用性和可测试性。
- 什么是Spring IoC?它如何工作?
- IoC(控制反转)是一种设计原则,用于减少代码之间的耦合度。在Spring中,IoC容器负责管理对象之间的依赖关系,而不是由代码直接创建和查找依赖对象。通过配置文件或注解,开发者可以声明对象及其依赖关系,然后由Spring容器在运行时自动装配这些对象。
- Spring AOP是什么?它有哪些用途?
- Spring AOP(面向切面编程)是Spring框架的一个模块,用于在应用程序中定义横切关注点(cross-cutting concerns),如日志、事务管理等。通过AOP,开发者可以将这些关注点与业务逻辑分离,实现代码的模块化和复用。
Hibernate框架
- Hibernate是什么?它与JDBC有什么区别?
- Hibernate是一个对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库。与JDBC相比,Hibernate隐藏了底层的SQL细节,提供了更高级别的抽象和更便捷的操作方式。
- Hibernate中的一级缓存和二级缓存是什么?
- 一级缓存是Session级别的缓存,当从数据库中查询数据时,Hibernate会先将数据放入一级缓存中,后续对相同数据的查询会直接从缓存中获取,避免重复访问数据库。二级缓存是SessionFactory级别的缓存,可以在多个Session之间共享数据,提高性能。
Spring Boot
- Spring Boot的主要特点是什么?
- Spring Boot简化了Spring应用的初始搭建以及开发过程。通过提供默认配置和自动化配置,开发者可以快速创建和运行Spring应用,无需进行繁琐的配置工作。
- Spring Boot如何实现自动配置?
- Spring Boot通过条件注解(如@ConditionalOnClass、@ConditionalOnProperty等)和SpringFactoriesLoader机制来实现自动配置。在启动时,Spring Boot会扫描classpath下的META-INF/spring.factories文件,