Spring重要的几道面试题

1.spring的核心容器

             spring-core提供了框架的基本,保存ioc与di;

             spring-beans提供了beanFactory的实现;

             IOC容器管理对象的生命周期;

2.spring提供了哪两个容器

           springBeanFactory容器:

                                                  定义了BeanFactoryAware、InitializatingBean

           applicationContext容器:

                                                  包含了beanFactory容器所有的功能,beanFactory容器适用轻量级的

3.bean的定义

           bean是一个被实例化、组装并通过IOC容器进行管理的对象,这些对象是由配置文件提供的元数据创建;

4.bean的作用域、有状态bean、无状态bean

           作用域:一般使用singleton、prototype,(session、request、gloabsession使用比较少)

           有状态bean:在bean的生命周期内,bean保存了调用用户的信息,比如通过私有变量保存调用用户信息,就是有状态的bean;

            无状态的bean:在整个生命周期内,不会保存某个用户的信息,没有特定的用户,所有就是无状态的bean;

           有状态的bean使用prototype,无状态的bean使用singleton

5.bean的生命周期

           1.通过工厂方法实例化一个bean

           2.为bean的属性设置值和引用其他bean

           3.调用bean的初始化方法

           4.bean可以使用了

           5.关闭容器,调用bean的destory方法

           6.如果有bean的后置处理器,那么init方法前后分别还要加beforeInit和afterInit方法

6.说下你对Spring的了解

           Spring是java开源的一个基础性框架,为我们的开发提供了一些重要的便利的基础性的服务,比如ioc、di、aop、事务等,通过Spring可以大大简化我们的开发,解耦对象之间的关系,是最重要的基础性框架之一;

 7.什么是IOC

             IOC就是控制反转;一般我们实例化一个对象,就是程序本身去new这个对象,现在我们通过IOC,将new对象的控制权交给了IOC容器,IOC容器会帮我们管理对象的整个生命周期;这样的好处是将对象统一由IOC容器管理,降低了对象之间的耦合度,提高了代码的重用性;

8.什么是DI

             DI就是依赖注入;程序依赖IOC容器注入外部资源;

9.事物管理

            1.声明式事务管理(基本都用这个)

            2.编程式事务管理

10.Spring AOP

             AOP是面向切面编程;将系统分为核心关注点和横切关注点;业务的主要流程是核心关注点,与之关系不大的是横切关注点;横切关注点的特点是它经常发生在核心关注点的多处,比如日志、权限、事务等;

             横切关注点:对哪些方法进行拦截,拦截后如何处理,这些就称为横切关注点;

             切面:就是横切关注点的抽象;

             连接点:被拦截的点,Spring只支持方法级别的连接点;

             切入点:定义通知用在哪些连接点;

             通知:拦截到连接点后要执行的代码;

11.springMVC的工作机制

             1.Spring MVC将所有的请求都交给dispatcherServlet

             2.dispatcherServlet会找到处理请求的controller

             3.dispatcherServlet将请求提交到目标controller

             4.controller进行处理后,会返回一个ModelAndeView

             5.dispatcher查询视图解析器,找到模型对象指定的对象

             6.视图对象负责渲染返回给客户端

12.项目中如何体现spring的AOP

             项目中使用AOP最多的地方就是:声明式事务

             1.定义一个事务管理器

             2.配置事务特性(相当于声明通知。通常在类的方法上定义事务)

             3.配置哪些类的哪些方法上需要配置事务(相当于切入点)

13.Spring在项目中如何充当粘合剂

            1.在项目中利用IOC,明确定义组件的接口,开发者可以独立开发各个组件,然后可以根据组件中的依赖关系进行组装,很好的把action和dao的实现结合起来

             2.spring的事物管理把orm框架对数据库的操作进行了事务配置

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值