Sping面试题分析

1、开放中主要使用Spring的什么技术?

   (1)IOC容器管理各层的组件

   (2) 使用AOP配置声明式事务

   (3)整合其他框架

2简述AOP和IOC概念

    AOP : Aspect  Orientend Program ,面向(方面)切面的编程:

  Filter(过滤器)也是一种AOP,AOP是一种新的方法论,是对传统OOP(Object-Oriented Pargaamming 面向对象编程)的补充AOP的主要变成对象是切面(aspect),而切面模块化横切关注点。可以举例通过事务说明。

  IOC:Invert 法Control控制反转,也称为DI(依赖注入)其思想是反转资源获取的方向。

传统的资源查找方式:要求组件向容器发起请求查找资源,作为回应,容器适时的返回资源。

而IOC之后:则容器主动将资源推送给他所管理的组件,组件所要做的是选择一种合适的方法来接受资源,这种方式也称为查找的被动形式

3.在SPring中如何配置Bea?

Bean的配置方式:通过全类名(反射)、通过工厂方式(静态工厂方式&实例工厂方式)、FactoryBean.

4.IOC容器对Bean的生命周期:

(1)、通过构造器或工厂方式创建Bean实例。

(2)、为Bean的属性设置值和对其他Bean的引用

(3)、将Bean实例传递给Bean后置处理器的postProcessBeforInitialization方法。

(4)、调用Bean的初始方法(init-method)

(5、、将Bean实例传递给Bean后置处理器的PostprocessAfterInitialization方法

(6)Bean可以使用了

(7)当容器关闭时,调用Bean的销毁方法(destory-method)

\

 

 

5.Spring如何整合Struts2?

  整合Struts2,即由IOC容器管理Struts2的Action:

    >安装Spring插件:把struts2-spring-plugin-2.2.jar复制到当前WEB应用的WEB-INF/lib目录

    >在Spring的配置文件中配置Struts2的Action

·    >在struts2配置文件中配置action,但其class属性不在指向Action的实现类,而是指向Spring容器中的Action实例ID

 

6.Spring如何整合Hibernate?

整合hibernate ,即由IOC容器生成SessionFactory对象,并使用Spring的声明式事  》利用LocalSessionFactoryBean工厂Bean,声明一个使用XML映射文件的SessionFactory实例。

  》利用HibernateTransactionManager 配置Hibernate的事务管理器

 

7、Spring MVC 比较Struts2

(1)SpringMVC 的入口是Servlet,而Struts2 的入口是Filter

 (2)Spring MVC 会稍微比Struts2快些,Spring MVC 是基于方法设计,而Struts是基于类,每次发送一次请求都会产生一个Action实例。

(3)SpringMVC 使用更加简洁,开发效率更高,支持JSR303,处理ajax 的请求更方便。

(4)Struts2的OGNL表达式是页面的开发效率相比SpringMVC更高些

 

 

8、SpringMVC 的运行流程

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2015-10-08 21:39  宝哥大数据  阅读(273)  评论(0编辑  收藏  举报