100道spring高频面试题
-
Spring概览
-
1、Spring是什么?
-
2、Spring框架的好处?
-
3、Spring有哪些模块?
-
4、解释Core Container(Application context)模块
-
5、BeanFactory实现实例
-
6、XMLBeanFactory
-
7、解释AOP模块
-
8、解释JDBC抽象和DAO模块
-
9、解释对象/关系映射集成模块
-
10、解释Spring web模块
-
11、解释Spring MVC模块
-
12、Spring配置文件
-
13、如何才能有多个Spring配置文件?
-
14、ApplicationContext有哪些常见实现?
-
15、Bean Factory和ApplicationContext有什么区别?
-
16、Spring框架的一些最佳实践是什么?
-
17、使用Spring框架的方式有哪些?
-
18、我们如何使用Spring创建restful web服务来返回JSON响应结果?
-
19、Spring vs Spring MVC vs Spring Boot?
-
20、一个Spring大概是什么样子?
-
-
依赖注入
-
21、Spring的IOC容器是什么?
-
22、IOC的好处有哪些?
-
23、Spirng中有多少种IOC容器?
-
24、BeanFactory和ApplicationContext比较
-
25、什么是Spring中的依赖注入?
-
26、紧耦合和松耦合有什么区别?
-
27、IOC(依赖注入)有哪些不同类型?
-
28、你建议使用构造方法注入还是Setter注入?
-
-
Spring Beans
-
29、Spring beans是什么?
-
30、Spring bean定义包含什么?
-
31、如何向Spring容器提供配置元数据?
-
32、怎么定义bean的作用域?
-
33、说明Sprig支持的bean作用域
-
34、单例作用域是线程安全的吗?
-
35、解释Spring Bean的声明周期
-
36、有哪些重要的bean生命周期方法?你能重写它们吗?
-
37、Spring的内部bean是什么?
-
38、如何在Spring中注入Java集合?
-
39、什么是Spring Bean装配?
-
40、什么是Bean自动装配?
-
41、解释不同类型的自动装配
-
42、自动注入有限制吗?
-
43、你能在Spring中注入null和空字符串吗?
-
-
Spring注解
-
44、有哪些重要的Spring注解?
-
45、@RequestParam注解的作用是什么?
-
46、注解@Primary的重要性
-
47、XML配置和注解之间有什么区别?
-
48、@SpringBootApplication的作用是什么?
-
49、解释@InitBinder?
-
50、定义@ControllerAdvice
-
51、我们可以将一个个对象作为控制器处理程序方法的响应吗?
-
52、解释@ModelAttribute?
-
53、@RequestMapping注解
-
54、什么是spring中基于java的配置?给出一注解示例
-
55、什么是基于注解的容器配置?
-
56、如何打开注解装配?
-
-
Spring 数据访问
-
57、Spring JDBC API中有哪些类?
-
58、如何在Spring框架中更高效地使用JDBC?
-
59、JdbcTemplate
-
60、如何通过spring JdbcTemplate获取数据?
-
61、NamedParameterJdbcTemplate的优点是什么?
-
62、什么是SpringJDBCTemplate类以及如何使用它?
-
63、 JDBC和Spring JDBC有什么区别?
-
64、Spring DAO支持
-
65、使用Spring访问Hibernate有哪些方式?
-
66、Spring支持的ORM
-
67、如何使用HibernateDaoSupport集成Spring和Hibernate?
-
68、Spring支持的事务管理类型?
-
69、Spring框架的事务管理有哪些优点?
-
70、哪种事务管理类型更可取?
-
-
Spring AOP
-
71、解释AOP
-
72、AOP有哪些优点?
-
73、AOP有哪些实现?
-
74、AOP术语有哪些?
-
75、切面
-
76、连接点
-
77、通知
-
78、切点
-
79、什么是引入?
-
80、什么是目标对象?
-
81、什么是代理?
-
82、有哪些不同类型的代理?
-
83、什么是织入。什么是织入应用的不同点?
-
84、Spring AOP中关注点和横切关注点有什么区别?
-
85、解释基于XML Schema方式的切面实现
-
86、解释基于注解的切面实现
-
87、什么是Spring MVC框架?
-
88、创建spring mvc应用程序所需的最少配置是什么?
-
89、说出Spring MVC请求处理的主要流程?
-
90、DispatcherServlet
-
91、WebApplicationContext
-
92、 Spring MVC中的控制器是什么?
-
93、你如何将spring mvc框架与MVC架构联系起来?
-
94、Spring MVC中的ViewResolver是什么?
-
95、MultipartResolver是什么?怎么使用?
-
96、如何在spring mvc应用程序中上传文件?
-
97、Spring Web MVC怎么校验数据?
-
98、什么是springmvc拦截器以及如何使用它?
-
-
扩展
-
99、Spring Security是什么?
-
100、为什么要用SpringBoot?
-
Spring概览
1、Spring是什么?
Spring是一个企业级Java开发框架。Spring框架的核心特性可用于开发任何Java应用程序,但也有一些扩展用于在Java EE平台上构建web应用程序。Spring框架的目标是通过基于POJO的模型,使Java EE开发更加简单。
2、Spring框架的好处?
轻量级:Spring框架是轻量级的,最基础的版本大约只有2MB。
控制反转(IOC):通过控制反转技术,实现了解耦合。对象给出它们的依赖,而不是创建或查找依赖的对象。
面向切面(AOP):Spring支持面向切面的编程,并将应用程序业务逻辑与系统服务分离。
MVC框架:Spring的WEB框架是一个设计良好的web MVC框架,它为web框架提供了一个很棒的替代方案。
容器:Spring包含并管理对象的生命周期和配置。
事务管理:Spring提供了一个一致性的事务管理接口,可以收缩到本地事务,也可以扩展到全局事务(JTA)。
异常处理:Spring提供了方便的API来将具体技术的异常(由JDBC、Hibernate或JDO抛出)转换为一致的unchecked 异常。
3、Spring有哪些模块?
Spring