文思创新软件技术有限公司-杭州
北京市 · 计算机软件 · 10000人以上
公司实力雄厚
并购
A级纳税人
高新技术企业
瞪羚企业
经营产品·1项目信息·2

面试经验

“有难度”
“体验一般”
2080 条面经
面试官hr难度笔试技术流程薪资英语自我介绍数据库比较简单一轮培训简历领导加班linuxjava面试题基础知识
8343
PHP
确定通过感觉靠谱
● 如何实现一个IOC容器 ● spring是什么? ● 是一个控制反转IOC和面向切面AOP的容器框架 ● 简化开发,提高效率● 将程序中的一些交叉业务逻辑(安全,日志,事务)。封装成一个切面。然后注入到目标对象(具体业务逻辑)中 ● AOP可以对功能进行增强,例如可以在执行某个方法之前(之后)做一些事情 ● ApplicationContext是BeanFactory的子接口 ● BeanFactroy只有在使用到某个Bean时,才会对Bean进行加载实例化(延迟加载) ● 弊端 ● 如果Bean的某一个属性没有注入,要到第一次使用调用getBean方法才能抛出异常 ● ApplicationContext在启动时,一次性创建出所有的Bean ● 好处 ● 有利于检查所依赖属性是否注入 ● 弊端 ● 占用内存空间,当应用程序配置Bean多时,启动就慢 ● ApplicationContext支持更多功能 ● 可同时加载多个配置文件 ● 支持国际化 ● 统一的资源文件的访问方式 ● 提供在监听器中注册bean的事件 ● 两者都支持BeanPostProcessor,BeanFactoryPostProcessor的使用 ● BeanFactory需要手动注册 ● ApplicationContext是自动注册● 1. 通过构造器创建bean实例 ● 2. 为bean的属性设置值和对其他bean的引用 ● 3. 把bean实例传递给bean后置处理器的方法 ● 4. 调用bean的初始化方法 ● 5. 把bean实例传递给bean后置处理器的方法 ● 6. 使用bean ● 7. 容器关闭时,调用bean的销毁方法 ● AOP使用的是动态代理,它不会去修改字节码,会在内存中临时为方法生成一个AOP对象,此对象包含了目标对象的全部方法,并且在切点做了增强处理 ● JDK动态代理提供反射来接收被代理的类,要求代理的类必须实现一个接口 ● 而jdk动态代理的核心是InvocationHandler接口和Proxy类 ● 如果目标类没有实现接口,AOP则会选择CGLIB来实现 ● 它是通过继承的方式做动态代理的,如果某个类被标记为final,就没办法了...查看更多
包含6个问题,3个回答
Q:● 如何实现一个IOC容器 ● spring是什么?
2 年前 发布
加载中
看准网文思创新软件技术有限公司-杭州文思创新软件技术有限公司-杭州面试经验

找工作