spring常见面试题

1.使用spring给我们带来什么?

  • 简化开发,代码解耦
  • 声明式事务,提供transactionmanager
  • 提供诸多的工具类,围绕spring生态,比如jdbctemplate,beanutil
  • 提供了内置的解决方案,bop,ioc,aop
  • 生态越来越丰富,易于和其他组件联合开发
  • 。。。

2.beanfactory和applicationcontext的区别?

  • applicationcontext是beanfactory的实现类
  • beanfactory是顶层设计,applicationcontext是用户接口,拥有诸多方法,功能丰富
  • 一般认为applicationcontext就是ioc容器,ioc功能实在defaultlistablefatory中实现
  • 。。。

3.spring bean的生命周期

  • singleton:从spring容器的启动到容器的关闭.如果是延迟加载,在调用前船舰对象
  • prototype:在调用前创建,在调用后销毁。作用域决定了生命周期的长短

4.spring bean各作用域间的区别

  • singleton:可以在任何地方通过ioc容器拿到
  • prototype:全局的
  • request:一次请求
  • session:一个会话期,默认30min,浏览器关闭并不会立即失效
  • globlesession:可以理解为容器中的一个应用

5.spring中的bean是否线程安全的?

问的是spring中的你写的bean是否是线程安全。bean是放在ioc容器中,所以,是否安全和spring无关,和你自己写的代码有关,无论是否是单例的

6.spring中用到了那些模式?

单例,享元模式,代理,建造模式,装饰器,门面模式,委派模式。。。

7.spring,springboot ,springcloud的区别

  • spring已有的生态能够完成日常开发的所有任务,但是配置繁琐
  • springboot:内置默认配置,我们需要的是覆盖配置,而不是从零开始。官方提供了脚手架,内置tomcat,不需要再部署容器。可打包jar直接运行
  • springcloud:正式进军分布式,注册中心,服务发现,链路追踪,熔断,负载。。。打造一个生态,不需要自己整合,一站式
  • springcloud 依赖springboot,springboot以来spring

8.spring中的事务怎么传播?事务如何挂起?

transactionmanager 代理模式。配置里需要提供datasource,采用连接池技术。挂起直接不用当前连接,重新获取新的连接就好。传播,获取多个连接,各做各的事。

9.beanfactory和factorybean的区别?

  • beanfactory:ioc容器的顶层设计
  • factorybean:用来构建bean的一个包装类

10.项目中用到aop的地方:

日志,权限管理,声明式事务,安全监控

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值