码迷,mamicode.com
首页 > 编程语言 > 详细

spring面试刷题

时间:2019-11-23 19:43:45      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:服务   依赖   线程安全   factory   调用   cto   系统   instance   voc   

spring面试刷题

1、spring是什么

spring是一套轻量级的java web开发框架,主要包括以下模块:spring core(提供ioc服务),spring aop(提供切面服务)、spring mvc(基于web应用的modle-view-controller模块)

2、spring主要优点

1、依赖注入:避免框架代码对业务代码的污染

2、aop:将一些系统级别的功能使用aop的形式进行复用

3、集成很多框架:dubbo、mybatis等

4、spring aop的代理模式实现原理

aop两种实现模式:动态代理、静态代理

静态代理:aspectj,在编译期就生成代理类,将增强逻辑织入代理类中

动态代理:两种方式jdk动态代理、cglib(code generation library)两种方式

jdk动态代理:被代理类实现invotaionhandler接口,实现invoke方法,在invoke中发射调用原来方法,在调用前后编写增强函数,接着proxy利用invocationHandler生成目标接口的代理类。

两个关键点:Proxy.newProxyInstance()还有InvocationHandler:第一个生成代理类,第二个是实现具体的代理逻辑

5、spring ioc的实现原理

https://www.iteye.com/blog/jinnianshilongnian-1715092(可以跟着这个学习)

6、BeanFactory和applicationContext的区别

7、spring bean的几种作用域

  • singleton
  • protype
  • session
  • request
  • globe-session

8、单例的bean是不是线程安全的

spring面试刷题

标签:服务   依赖   线程安全   factory   调用   cto   系统   instance   voc   

原文地址:https://www.cnblogs.com/zhangchiblog/p/11919242.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!