1 struts
Action是不是线程安全的?如果不是,有什么方法可以保证
Action的线程安全?如果是,说明原因
2 MVC,分析一下struts是如何实现MVC的
3 struts中的几个关键对象的做用(说说几个关键对象的作用)
4 spring
说说AOP和IOC的概念以及在spring中是如何应用的?
5 Hibernate有几种查询数据的方式?
6 load()和get()的区别
回答:
1 Struts1 Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts1 Action能作的事,并且要求在开发时特别小心。Action资源必须是线程安全的或同步的。
Struts2 Action对象为每一个请求产生一个实例,因此没有线程安全问题。(实际上,servlet容器给每个请求产生许多可丢弃的对象,并且不会导致性能和垃圾回收问题)
2 struts是用一组类,servlet和jsp实现mvc的
3 ActionFrom ActionServlet Action struts-config.xml
4 spring的核心就是IOC,通过指定对象的创建方法,描述对象与服务之间的关系,而不生成对象
5 3种,hql 条件查询 原声sql
6 load()方法认为该数据一定存在,可以放心的使用代理来延时加载,如果使用过程中发现了问题,就抛出异常;get()方法一定要获取到真实的数据,否则返回null