栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

题目>>Spring>>1

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

题目>>Spring>>1

1、描述一下对IOC的理解

三个方面:容器概念、控制反转、依赖注入

容器概念: IOC可以看做是一个容器map,存放各种对象(xml配置的bean,@Component、@Service、@Repository等),在项目启动时会根据全限定类名使用反射创建对象放到map里。
这时map中会有各种对象,在代码中用到对象时,再通过DI注入(@Autowired、@Resource等注解、xml中bean节点内的ref属性)。

控制反转: 未引入IOC容器之前,对象A依赖于对象B。在对象A需要使用对象B时,需要主动去创建一个B的对象,控制权在对象A手上;
引入IOC之后,对象A和对象B(均为单例)在初始化过程中会由IOC容器主动创建。当对象A需要使用对象B时,只需要从IOC容器中获取对象B即可。对象A获得依赖对象B的过程由主动行为变为了被动行为,即为控制反转。

依赖注入: 获得依赖对象的过程被反转了。获得依赖对象的过程由自身管理变味了由IOC容器主动注入。依赖注入是实现IOC的方法,由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中。

2、描述一下对AOP的理解 3、静态代理与动态代理 4、String Bean的生命周期

什么是Bean?

bean是SpringIOC容器实例化、组装和管理的对象。

简述SpringBean的生命周期

对于普通的Java对象,当使用对象的时候再new创建对象,当对象不被使用时,由Java回收器进行垃圾回收;对于Bean来说,是由IOC容器去帮助实例化对象并管理。SpringBean的生命周期完全由容器进行控制。

Spring Bean的作用域

singleton:唯一bean实例,默认是单例的;prototype:每次请求都会创建一个新的bean实例;request:每一次HTTP请求都会产生一个新的bean,该bean只在当前的HTTP request内有效;session:每一次HTTP请求都会产生一个新的bean,该bean只在当前的HTTP session内有效;global-session:全局session作用域。spring5已经没有了。

Bean生命周期

生命周期的概要流程为:实例化(createBeanInstance())、属性赋值(populateBean())、初始化(initializeBean())、销毁
详细生命周期:

实例化:

1、Spring启动,查找并加载需要被Spring管理的bean,进行Bean的实例化; 属性赋值:

1、Bean实例化后对将Bean的引入和值注入到Bean的属性中; 初始化:

1、如果Bean实现了BeanNameAware接口,则Spring将Bean的id传递给setBeanName()方法。作用为在创建此bean的bean工厂中设置bean的名称;2、如果Bean实现了BeanFactoryAware接口,则Spring将调用setBeanFactory()(回调提供了自己bean的实例工厂)方法,将BeanFactory容器实例传入;3、如果Bean实现了ApplicationContextAware接口,则Spring将调用Bean的setApplicationContext()方法,将bean所在应用上下文引用传入;

5、Spring事务的实现方式 6、Spring事务底层原理 7、SpringMVC运行流程 8、Spring框架中使用的设计模式

代理模式——在AOP和remoting中被用的比较多
单例模式——注入的bean默认为单例模式
模板方法——用以解决代码重复问题。如:RestTemplate、JmsTemplate、JpaTemplate
前端控制器——Spring提供了DispatcherServlet来对请求进行分发
依赖注入——贯穿于BeanFactory/ApplicationContext接口的核心理念
工厂模式——BeanFactory用来创建对象的实例。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/760663.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号