面试题思考:IOC的优缺点】的更多相关文章

先讲重点  面试时怎么答: 先把IOC的概念说出来 依赖注入和控制反转 所谓的依赖注入是甲方开放接口,在它需要的时候,能够将乙方传递进来(注入):所谓的控制反转,甲乙双方不相互依赖,交易活动的进行不依赖于甲乙任何一方,整个活动的进行由第三方负责管理.这就是spring IoC的思想所在. 然后说优缺点 IOC的优点:实现组件之间的解耦,提高程序的灵活性和可维护性. IOC的缺点: 1.创建对象的步骤变复杂了,不直观,当然这是对不习惯这种方式的人来说的. 2.因为使用反射来创建对象,所以在效率上会…
一.反射机制概述 Java 反射机制是在运行状态中,对于任意一个类,都能够获得这个类的所有属性和方法,对于任意一个对象都能够调用它的任意一个属性和方法.这种在运行时动态的获取信息以及动态调用对象的方法的功能称为Java 的反射机制. Class 类与java.lang.reflect 类库一起对反射的概念进行了支持,该类库包含了Field,Method,Constructor类(每个类都实现了Member 接口).这些类型的对象时由JVM 在运行时创建的,用以表示未知类里对应的成员. 这样你就可…
开源Linux 长按二维码加关注~ 上一篇:Linux中几个正则表达式的用法 Docker解决的问题: 由于不同的机器有不同的操作系统,以及不同的库和组件,在将一个应用部署到多台机器上需要进行大量的环境配置操作. Docker 主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程.使用 Docker 可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其它机器上. 与虚拟机的比较: 虚拟机也是一种虚拟化技术,…
面试回答: GET请求在URL中传送的参数是有长度限制的,而POST没有. GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息. GET参数通过URL传递,POST放在Request body中. GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留. GET请求只能进行url编码,而POST支持多种编码方式. GET请求会被浏览器主动cache,而POST不会,除非手动设置. GET产生的URL地址可以被Bookmark,而POST不可以. G…
Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁. init():在Servlet的生命周期中,仅执行一次init()方法.它是在服务器装入Servlet时执行的,负责初始化Servlet对象.可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Servlet.无论有多少客户机访问Servlet,都不会重复执行init(). service():它是Servlet的核心,负责响应客户的请求.每当一个客户请求一个HttpServlet对象,…
这种在运行时,动态地将代码切入到类的指定方法.指定位置上的编程思想就是面向切面的编程. AOP是Spring提供的关键特性之一.AOP即面向切面编程,是OOP编程的有效补充. 使用AOP技术,可以将一些系统性相关的编程工作,独立提取出来,独立实现,然后通过切面切入进系统. 从而避免了在业务逻辑的代码中混入很多的系统相关的逻辑——比如权限管理,事物管理,日志记录等等. 这些系统性的编程工作都可以独立编码实现,然后通过AOP技术切入进系统即可.从而达到了 将不同的关注点分离出来的效果. 本文深入剖析…
关键字:应用服务器.web服务器.web容器.jsp容器.servlet容器. 1.应用服务器: 作为应用程序服务器,要求可以通过各种协议(包括 HTTP 协议)把商业逻辑暴露给(expose)客户端应用程序.应用程序使用此商业逻辑就像你调用对象的一个方法或过程(语言中的一个函数)一样. 2.web服务器(程序/软件): www服务器或http服务器.提供Web信息浏览服务.它只需支持HTTP协议.HTML文档格式及URL.向浏览器提供服务的程序. 目前常见web服务器: 大型:Microsof…
RPC:(Remote Procedure Call)  被设计为在应用程序间通信的平台中立的方式,它不理会操作系统之间以及语言之间的差异. 支持多语言 RMI:(Remote Method Invocation) RPC 的Java版本,EJB的基础技术 RMI 采用JRMP(Java Remote Method Protocol)通讯协议,是构建在TCP/IP协议上的一种远程调用方法. RMI 采用stubs和skeletons来进行远程对象的通讯.  stub充当远程对象的客户端代理,有着…
Java 7 的7个新特性 1.对集合类的语言支持: 2.自动资源管理: 3.改进的通用实例创建类型推断: 4.数字字面量下划线支持: 5.switch中使用string: 6.二进制字面量: 7.简化可变参数方法调用. JAVA8 新特性 Lambda 表达式 − Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中. 方法引用 − 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器.与lambda联合使用,方法引用可以使语言的构造更紧凑简洁,减…
面试时答: IO是面向流的,NIO是面向缓冲区的 Java IO面向流意味着每次从流中读一个或多个字节,直至读取所有字节,它们没有被缓存在任何地方: NIO则能前后移动流中的数据,因为是面向缓冲区的 IO流是阻塞的,NIO流是不阻塞的 Java IO的各种流是阻塞的.这意味着,当一个线程调用read() 或 write()时,该线程被阻塞,直到有一些数据被读取,或数据完全写入.该线程在此期间不能再干任何事情了 Java NIO的非阻塞模式,使一个线程从某通道发送请求读取数据,但是它仅能得到目前可…