Spring面试题大汇总

2023-03-12,,

1.Spring的IOC和AOP机制?

我们在使用spring框架其实就是为了实现IOC,依赖注入,和AOP,面向切面编程,主要有两种设计模式工厂模式和代理模式,IOC就是典型的工厂模式,通过sessionfactory去注入实例,AOP就是典型的代理模式,代理模式就是常用的java设计模式,他的特征是代理类和委托类有同样接口,

2.Spring核心是什么

IOC(控制反转)、AOP (面向切面编程)、容器

3.介绍一下IOC

IOC控制反转,也叫依赖注入,利用了工厂模式将对象叫给容器来管理,你只要在spring配置文件中配置相对应得bean,以及设置相关得属性,让spring容器来生成类的实例对象以及管理对象;在spring容器启动的时候,spring会把你在配置文件配置的bean都初始化好,调用的时候,spring就见已经初始化好的bean分配给你调用这些bean的类,分配的方法就是调用setter方法来注入。

4.介绍一下AOP

AOP面向切面编程,主要分为两大类第一采用动态代理技术,利用消息截取的方式,对该消息进行装饰,以取代原有的对象行为的执行;二是采用静态织入的方式,引用特定的语法来创建。

5.Spring中Autowired和Resource关键字有什么区别

@Resource和@Autowired都是做bean的注入时使用,Resource是javax.annotation.resource,需要导入,而spring支持该注解的注入

6介绍一下spring

spring是一个轻量级的IOC和AOP容器框架,是为了Java应用程序提供基础性服务的一套框架,常见的配置方式有三种基于XML配置,基于注解配置,基于Java的配置

8.spring MVC流程

1)用户发送请求☞前端服务器DispatcherServlet

2)DispatcherServlet收到请求后调用HandlerMapping处理器

3)处理器映射找到具体的处理器,生成处理器对象及处理器拦截器并返回给DispatcherServlet

4)DispatcherServlet调用HandlerAdapter处理器适配器

5)HandlerAdapter经过适配器掉用具体的Controller处理器

6)Controller执行完反返回ModeAndView

7)HandlerAdapter将Controller执行结果ModelAndView返回给  DispatcherServlet

8)DispatcherServlet将ModeAndView传给ViewReslover视图解析器

9)ViewResalover解析后返回具体的View

10)DisPatcherServlet根据View进行渲染视图

11)DispatcherServlet响应用户

9.String组件说明

1)DispatcherServlet:前端控制器,整个流程的中心,控制其他组件的执行,降低组件之间的耦合性,提高组件的扩展性

2)HandlerMapping:通过扩展控制器映射器实现不同的映射方式

3)HandlerAdapter:通过扩展处理器适配器,支持更多类型的处理器

4)ViewREsolver:通过扩展视图解析器,支持更多的视图解析

10.MVC设计模式

1)Model模型:

2)View视图

3)Controller控制器:

11.SPringMVC怎么设置重定向和转发

转发:forward 比如Forword:user.do?name=method4
  重定向:再返回值前面加一个 redirect  比如redirect:http://www.baoidu.com

12.spring框架中几种设计模式

1)工厂模式:BeanFactroy就是简单的工厂模式体系,用来创建对象的实例

2)单例模:Bean默认就是单例模式

3)代理模式:Spring的AOP功能就用到了JDK的动态代理和CGLIB字节码生成技术

4)模板方法:用来解决代码重复的问题

5)观察者模式:定义一个对象一种一对多的依赖关系

13.spring支持的bean作用域有哪些?

1)singleton:使用该属性定义Bean时,IOC容器只创建一个Bean实例,IOC容器返回的是同一个Bean实例。

2)prototype:使用该属性定义Bean时,IOC容器可以创建多个Bean实例,每次返回的都是一个新实例

3)request:该属性只对HTTP请求起到作用,使用该属性定义bean时3,每次HTTP请求都会创建一个新的Bean,适用于WebApplicationContext环境

4)session:该属性只用于HTTP session,同一个session共享一个bean实例,不同session使用不同的实例

5)global—session:该属性只用于HTTP session,同session作用域不同的是,所有的session共享一个bean实例

Spring面试题大汇总的相关教程结束。

《Spring面试题大汇总.doc》

下载本文的Word格式文档,以方便收藏与打印。