Hi,我是Mic 一个工作了4年的粉丝,在面试的时候遇到一个这样的问题. "介绍一下Spring IOC的工作流程" 他说回答得不是很好,希望我能帮他梳理一下. 关于这个问题,我们来看看普通人和高手的回答. 普通人: 嗯........ 高手: 好的,这个问题我会从几个方面来回答. IOC是什么 Bean的声明方式 IOC的工作流程 IOC的全称是Inversion Of Control, 也就是控制反转,它的核心思想是把对象的管理权限交给容器. 应用程序如果需要使用到某个对象实例,直…
广义的 IOC IoC(Inversion of Control) 控制反转,即“不用打电话过来,我们会打给你”. 两种实现: 依赖查找(DL)和依赖注入(DI). IOC 和 DI .DL 的关系(这个 DL,Avalon 和 EJB 就是使用的这种方式实现的 IoC): DL 已经被抛弃,因为他需要用户自己去是使用 API 进行查找资源和组装对象.即有侵入性. DI 是 Spring 使用的方式,容器负责组件的装配. 注意:Java 使用 DI 方式实现 IoC 的不止 Spring,包括…
1.Spring Bean的生命周期? (1)构造方法实例化bean. (2)构造方法设置对象属性. (3)是否实现aware接口,三种接口(BeanNameAware,BeanFactoryAware,ApplicationContextAware),传递的是不同的实例注入给bean. (4)初始化init,使用bean. (5)结束时,销毁destroy方法. 2.Spring MVC的工作流程? (1)发起请求到前端控制器disPatchServelet. (2) disPatchServ…
[网络编程之Socket套接字介绍,套接字工作流程,基于TCP协议的套接字程序] 为何学习socket套接字一定要先学习互联网协议: 1.首先:要想开发一款自己的C/S架构软件,就必须掌握socket编程 2.其次:C/S架构的软件(软件属于应用层)是基于网络进行通信的 3.然后:网络的核心即一堆协议,协议即标准,你想开发一款基于网络通信的软件,就必须遵循这些标准. socket层 从上图中,我们没有看到socket的影子,它在哪里呢?用图说话一目了然 socket套接字是什么 Socket是应…
1.一般问题 1.1. 不同版本的 Spring Framework 有哪些主要功能? VersionFeatureSpring 2.5发布于 2007 年.这是第一个支持注解的版本.Spring 3.0发布于 2009 年.它完全利用了 Java5 中的改进,并为 JEE6 提供了支持.Spring 4.0发布于 2013 年.这是第一个完全支持 JAVA8 的版本. 1.2. 什么是 Spring Framework? Spring 是一个开源应用框架,旨在降低应用程序开发的复杂度. 它是轻…
什么是MyBatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis.是一个基于Java的持久层框架 为什么我们要用Mybatis? 无论是Mybatis.Hibernate都是ORM的一种实现框架,都是对JDBC的一种封装! 到目前为止,我们已经在持久层中学了几种技术了- Hibernate jdbc SpringDAO 那我们为啥还要学Mybati…
自己理解SSM框架可能问到的面试问题 一.需要知道的SSM基础知识 1.什么是Spring? Spring 是一款轻量级的 IOC (依赖反转) 和  APO (面向切面) 容器框架.(个人理解: 就是一个Bean对象容器,不用我们new 对象了,将对象的创建交给容器系统来管理了) 常见的配置方式有三种 : 1.基于 xml 的配置方式              2.基于注解的配置方式              3.基于Java的配置方式 (虽然这种我没怎么用过吧,但是确实是存在) 2.Spri…
从事.NET开发已经4个年头,经过十余个项目的学习与沉淀,终于有了一套自己熟悉并且相对完善的技术体系,面对未知,不再惧怕.期间完成并广泛用于公司项目的作品包括: abp的二次开发框架BodeAbp 基于owin的sso系统 全自动数据表格react与jquery版 通用的属性系统 慢慢的发现开发变得简单,感觉所有的业务需求都好像一种机械的重复,我似乎正在走进舒适区.然而技术海洋其深远辽阔远不是我腹中那三两滴墨水可以丈量,我要走的路还很长,恰逢公司五月启动了一个java平台网站的开发,而现有的技术…
Spring xml结构定义文件: http://www.springframework.org/schema/beans/spring-beans.xsd 可用xsd列表: http://www.springframework.org/schema/beans/ 代码使用: public void testAddUser() { ApplicationContext ctx = new ClassPathXmlApplicationContext( new String[] { "beans.…
反射的定义: 反射是java语言的一个特性,它允程序在运行时(注意不是编译的时候)来进行自我检查并且对内部的成员进行操作.例如它允许一个java的类获取它所有的成员变量和方法并且显示出来. 反射机制的优点与缺点 首先要搞清楚为什么要用反射机制?直接创建对象不就可以了吗,这就涉及到了动态与静态的概念. 静态编译:在编译时确定类型,绑定对象,即通过. 动态编译:运行时确定类型,绑定对象.动态编译最大限度发挥了java的灵活性,体现了多态的应用,有以降低类之间的藕合性. 反射机制的优点:可以实现动态创…