个性化阅读
专注于IT技术分析

精品!Spring面试题和答案合集详解

本文概述

Spring面试问题和答案经常被问到, 因为它现在已广泛用于在Java中开发企业应用程序的框架。列出了Spring面试中最常见的40个问题。


1)什么是春天?

它是一个轻量级的, 松散耦合的集成框架, 用于用Java开发企业应用程序。


2)spring框架有什么优势?

  1. 预定义模板
  2. 松耦合
  3. 易于测试
  4. 轻巧的
  5. 快速发展
  6. 强大的抽象
  7. 声明式支持

更多细节…


3)spring框架有哪些模块?

  1. 测试
  2. 弹簧芯容器
  3. AOP, 方面和仪器
  4. 数据访问/集成
  5. 网页

更多细节…


4)什么是IOC和DI?

IOC(控制反转)和DI(依赖注入)是一种提供松散耦合的设计模式。它从程序中删除依赖项。

让我们在不遵循IOC和DI的情况下编写代码。

public class Employee{
Address address;
Employee(){
address=new Address();//creating instance
}
}

现在, Employee和Address之间存在依赖关系, 因为Employee被迫使用相同的地址实例。

让我们编写IOC或DI代码。

public class Employee{
Address address;
Employee(Address address){
this.address=address;//not creating instance
}
}

现在, 由于没有强迫Employee使用相同的地址实例, 因此Employee和Address之间不再存在依赖关系。它可以使用任何地址实例。


5)SpringIOC集装箱的作用是什么?

IOC容器负责:

  • 创建实例
  • 配置实例, 并
  • 组装依赖

更多细节…


6)Spring的IOC容器有哪些类型?

Spring框架中有两种类型的IOC容器。

  1. 豆工厂
  2. ApplicationContext

更多细节…


7)BeanFactory和ApplicationContext有什么区别?

BeanFactory是基本容器, 而ApplicationContext是高级容器。 ApplicationContext扩展了BeanFactory接口。与BeanFactory相比, ApplicationContext提供了更多功能, 例如与spring AOP集成, 用于i18n的消息资源处理等。


8)构造函数注入和setter注入之间有什么区别?

No. 构造函数注入 Setter Injection
无局部注入 Partial Injection
请勿覆盖setter属性 如果定义了构造函数, 则重写它们。
如果发生任何修改, 则创建新实例 如果更改属性值, 则不会创建新实例
对于太多的属性更好 对一些属性更好。

更多细节…


9)春天的自动接线是什么?什么是自动装配模式?

自动装配使程序员能够自动注入Bean。我们不需要编写显式的注入逻辑。

让我们看看使用依赖注入来注入bean的代码。

<bean id="emp" class="com.srcmini.Employee" autowire="byName" />

自动装配模式如下:

No. Mode Description
no 这是默认模式, 这意味着未启用自动装配。
byName 根据属性名称注入bean。它使用setter方法。
byType 根据属性类型注入bean。它使用setter方法。
constructor 它使用构造函数注入bean

从Spring3开始, 不建议使用”自动检测”模式。


10)Spring的bean作用范围是什么?

Spring框架中有5个bean作用域。

No. Scope Description
singleton Bean实例将只有一次, 并且IOC容器将返回相同的实例。这是默认范围。
prototype 每次被请求时都会创建bean实例。
request Bean实例将根据HTTP请求创建。
session Bean实例将在每个HTTP会话中创建。
globalsession Bean实例将在HTTP全局会话中创建。它只能在portlet上下文中使用。

11)在哪种情况下, 你将使用单例和原型作用域?

Singleton范围应与EJB无状态会话Bean一起使用, 原型范围应与EJB有状态会话Bean一起使用。


12)Spring提供了哪些交易管理支持?

Spring框架提供了两种类型的事务管理支持:

  1. 程序化交易管理:应用于少量交易操作。
  2. 声明式事务管理:应用于许多事务操作。

»Spring JDBC面试问题


13)在Spring, JdbcTemplate有什么优势?

更少的代码:通过使用JdbcTemplate类, 你无需创建连接, 语句, 启动事务, 提交事务和关闭连接即可执行不同的查询。你可以直接执行查询。

更多细节…


14)Spring JDBC API的类是什么?

  1. Jdbc模板
  2. SimpleJdbcTemplate
  3. NamedParameterJdbcTemplate
  4. SimpleJdbcInsert
  5. SimpleJdbcCall

更多细节…


15)如何通过Spring JdbcTemplate获取记录?

你可以通过JdbcTemplate的查询方法从数据库中获取记录。有两个接口可以做到这一点:

  1. ResultSetExtractor
  2. 的RowMapper

16)NamedParameterJdbcTemplate的优点是什么?

NamedParameterJdbcTemplate类用于将值传递给命名参数。命名参数胜于? (PreparedStatement的问号)。

最好记住。

更多细节…


17)SimpleJdbcTemplate的优点是什么?

SimpleJdbcTemplate支持var-args和自动装箱功能。

更多细节…


»Spring AOP面试问题


18)什么是AOP?

AOP是面向方面编程的首字母缩写。它是一种将程序逻辑分为多个部分或部分或方法的方法。

它增加了模块化, 关键单元是Aspect。

更多细节…


19)spring AOP有什么优点?

AOP使你能够在业务逻辑之前或之后动态添加或删除关注点。它是可插拔的, 易于维护。

更多细节…


20)AOP的术语是什么?

AOP术语或概念如下:

  • JoinPoint
  • 忠告
  • 切入点
  • 方面
  • 介绍
  • 目标对象
  • 拦截器
  • AOP代理
  • 织造

更多细节…


21)什么是JoinPoint?

JoinPoint是程序中的任意点, 例如字段访问, 方法执行, 异常处理等。


22)spring框架是否支持所有的JoinPoints?

不, spring框架仅支持方法执行连接点。


23)什么是建议?

咨询代表按方面采取的行动。


24)AOP中的建议类型是什么?

SpringAOP中有5种建议。

  1. 咨询前
  2. 咨询后
  3. 返回建议后
  4. 提出建议
  5. 忠告

25)什么是切入点?

切入点是Spring AOP的表达语言。


26)什么是纵横比?

Aspect是Spring AOP中的一类, 包含建议和连接点。


27)什么是简介?

简介表示对类型的新字段和方法的介绍。


28)什么是目标对象?

目标对象是一个或多个方面建议的代理对象。


29)什么是拦截器?

拦截器是类似类的方面, 仅包含一个建议。


30)编织什么?

编织是将方面与其他应用程序链接的过程。


31)弹簧在编译时是否进行编织?

不, spring框架在运行时执行编织。


32)什么是AOP实施?

有3个AOP实现。

  1. SpringAOP
  2. Apache AspectJ
  3. JBoss AOP

»Spring MVC面试问题


33)Spring MVC的前端控制器类是什么?

DispatcherServlet类在Spring MVC中充当前端控制器。

更多细节…


34)@Controller注释是什么?

@Controller批注将该类标记为控制器类。它应用于班级。


35)@RequestMapping注释是什么?

@RequestMapping批注将请求与方法映射。它应用于该方法。


36)ViewResolver类是什么?

View Resolver类解析要为请求调用的视图组件。它定义了前缀和后缀属性来解析视图组件。


37)哪个ViewResolver类被广泛使用?

org.springframework.web.servlet.view.InternalResourceViewResolver类被广泛使用。


38)Spring MVC是否提供验证支持?

是。


其他面试问题

Java OOP面试问题
Java字符串和异常问题
JDBC面试问题
JSP面试问题
休眠面试问题
SQL面试题
Android面试题
MySQL面试问题

1)

2)

3)

4)

1)

2)

3)

4)

1)

2)

3)

4)

5)

Java基础面试问题

Java多线程问题

Java Collection面试题

Servlet面试问题

Spring面试问题

PL / SQL面试问题

Oracle面试问题

SQL Server面试问题

赞(0) 打赏
未经允许不得转载:srcmini » 精品!Spring面试题和答案合集详解
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏