31.中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不一样的技术之间共享资源。中间件位于客户机/ 服务器的操做系统之上,管理计算机资源和网络通信。是链接两个独立应用程序或独立系统的软件。相链接的系统,即便它们具备不一样的接口,但经过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。经过中间件,应用程序能够工做于多平台或OS环境。sql
(简单来讲,中间件并不能提升内核的效率,通常只是负责网络信息的分发处理)数据库
32.(1)无论有没有异常抛出,finally{}代码块比return先执行编程
(2)多个return是按顺序执行的,多个return执行一个后,后面的return就不会执行了。安全
33.(1).启动一个线程的方法是 start()服务器
(2).结束线程用的是interrupt()方法,而stop()是强制结束线程,并不推荐使用,同时stop()方法已被弃用网络
(3).daemon线程是守护线程,当主线程结束时,守护线程会自动结束session
(4).一个线程等待另一个线程的方法是wait()方法分布式
34.模块化
35.AOP的概念是Aspected Oriented Programming 面向方面编程。工具
好处:AOP将程序分解成各个方面或者说关注点。这使得能够模块化,至关横向上分切了。它能够解决OOP和过程化方法不可以很好解决的横切(crosscut)问题,如:事务、安全、日志等横切关注
实现AOP有几种方式:
(1). Spring 1.2版本中经过ProxyFactoryBean来实现aop,即经过动态代理来实现的,Aspect必须继承MethodBeforeAdvice,MethodAfterAdvice等
(2). Spring 2.0 AOP须要改的是FBI 这个类,并且它也不须要再实现某些接口
(3). 三使用标注(@AspectJ)实现AOP
36.Ant和Maven都是基于Java的构建(build)工具。理论上来讲,有些相似于(Unix)C中的make ,但没有make的缺陷。Ant是软件构建工具,Maven的定位是软件项目管理和理解工具。
Ant特色:
没有一个约定的目录结构 ›必须明确让ant作什么,何时作,而后编译,打包 ›没有生命周期,必须定义目标及其实现的任务序列 ›没有集成依赖管理
Maven特色:
拥有约定,知道你的代码在哪里,放到哪里去 ›拥有一个生命周期,例如执行 mvn install 就能够自动执行编译,测试,打包等构建过程 ›只须要定义一个pom.xml,而后把源码放到默认的目录,Maven帮你处理其余事情 ›拥有依赖管理,仓库管理。
37.hibernate延迟加载:
load方法来获得一个对象时,此时hibernate会使用延迟加载的机制来加载这个对象,即:当 咱们使用session.load()方法来加载一个对象时,此时并不会发出sql语句,当前获得的这个对象实际上是一个代理对象,这个代理对象只保存了实 体对象的id值,只有当咱们要使用这个对象,获得其它属性时,这个时候才会发出sql语句,从数据库中去查询咱们的对象。
相对于load的延迟加载方式,get就直接的多,当咱们使用session.get()方法来获得一个对象时,无论咱们使不使用这个对象,此时都会发出sql语句去从数据库中查询出来。
38.计算机中以补码存储。
正数的原码/反码/补码相同,因此
10存储为00000000 00000000 00000000 00001010
~10的原码为11111111 11111111 11111111 11110101(10取反)
~10的反码为10000000 00000000 00000000 00001010(最高位符号位,不变,其他位取反)
~10的补码为10000000 00000000 00000000 00001011(负数的补码=反码+1)
因此~10 = -11
39.要注意的是 switch结构中没有break的话,匹配完不会跳出,会继续匹配下一个case直到整个结构结束。
40.Servlet的生命周期通常能够用三个方法来表示:
init():仅执行一次,负责在装载Servlet时初始化Servlet对象
service() :核心方法,通常HttpServlet中会有get,post两种处理方式。在调用doGet和doPost方法时会构造servletRequest和servletResponse请求和响应对象做为参数。
destory():在中止而且卸载Servlet时执行,负责释放资源
初始化阶段:Servlet启动,会读取配置文件中的信息,构造指定的Servlet对象,建立ServletConfig对象,将ServletConfig做为参数来调用init()方法。