一、tomcat有哪些性能调优方法,请举例说明?
jvm参数调优,控制线程数,禁止dns查询,Apache+jk集群
二、Spring中bean的作用域有哪些?
Spring中bean的作用域用scope来表示。
scope的值有两个:
singleton为单粒,即Spring IoC容器只会创建该bean的唯一一个实例,这也是默认的。该实例就会一直放在缓存里供大家使用。
prototype为原型,即每一次请求都会产生一个新的bean实例。
三、struts2和struts1有哪些区别?
Struts2与Struts1对比
1)Action类的实现方式:
Struts1的Action在实现的时候必须扩展Action类或者Action的子类,Struts2的Action类实现的时候可以不用实现任何类和接口,虽然Struts2中提供一个ActionSupport类,但是,不是必须的。
2)Struts1的Action类是单例模式,必须设计成线程安全的,Struts2则为每一个请求产生一个实例
3)Struts1的Action类依赖与Servlet API,从其execute的方法签名可看出,execute方法有两个Servlet的参数HttpServletRequest和HttpServletResponse,Struts2则不依赖于Servlet API
4)以为Struts1依赖于Servlet API这些Web元素,因此对Struts1的Action进行测试的时候是很困难的,需要借助与其他的测试工具,Struts2的Action可以象测试其他的一些Model层的Service类一样进行测试
5)Struts1的Action与View通过ActionForm或者其子类进行数据传递,虽然也有LazyValidationForm这样的ActionForm的出现,但是,还是不能象其他层面那样通过一个简单的POJO进行数据传递,而Struts2将这样的奢望变成了现实
6)Struts1绑定了JSTL,为页面的编写带来方便,Struts2整合了ONGL,也可以使用JSTL,因此,Struts2下的表达式语言更加强大
四、Struts2与WebWork对比
Struts2实际上就是WebWork2.3,不过,Struts2还是与WebWork有少许的差别:
1)Struts2不再支持内置IOC容器,改用Spring的IOC容器
2)Struts2对于Webwork的一些Ajax的特性的标签改用Dojo进行替换
四、JDK1.5相比于JDK1.4主要有哪些新特性?
五、如何理解软件的模块独立性?
六、如何设计实现外网数据库和内网数据库的数据交换?
七、Spring最有用的功能是什么?举例说明IOC和AOP的作用。
八、关于sql的面试题:sql语句性能调优的方法有哪些?
九、关于sql的笔试题:假设有如下表:
TABLE: test
id | a | b |
1 | 4 | 2 |
2 | 1 | 2 |
3 | 1 | 3 |
4 | 3 | 2 |
5 | 1 | 5 |
6 | 1 | 2 |
7 | 4 | -1 |
8 | 1 | 2 |
答案:SELECT * FROM (SELECT * FROM test WHERE a=1 AND b=2 ORDER BY id DESC) t1 UNION SELECT * FROM test WHERE (a=1 AND b!=2) OR (a!=1 AND b=2)