Sunday, January 11, 2009

Spring, struts, Hibernate

更多精彩请到 http://www.139ya.com


1.strust的。
Action是不是线程安全的?如果不是
有什么方式可以保证Action的线程安全?如果是,说明原因

2.MVC,分析一下struts是如何实现MVC的

3.struts中的几个关键对象的作用(说说几个关键对象的作用)

4.spring
说说AOP和IOC的概念以及在spring中是如何应用的

5.Hibernate有哪几种查询数据的方式

6.load()和get()的区别

1.不是线程安全的。只要不申明类变量就可以保证线程安全。因为只存在一个Action类实例,所有线程会共享类变量。
2.好笼统,ActionServlet实现控制层,丰富的标签库提供视图层的良好支持
3.ActionServlet,requestProcess,ActionForm,Action等等
4.由spring完成AOP(面向切面),IOC(注入)
5.3种,HQL,QBC,SQL
6.如果查询不到记录,load方法会抛出异常,get方法返回null



1.谈谈hibernate的延迟加载和openSessionInView

3.spring的事务有几种方式?谈谈spring事务的隔离级别和传播行为。

9.Hibernate的主键生成机制increment,native,identity,assigned,sequence


1、 简述你对IoC(Inversion of Control)的理解,描述一下Spring中实现DI(Dependency Injection)的几种方式。


2、 Spring的Bean有多种作用域,包括:

singleton、prototype、request、session、global session、application、自定义


3、 简单描述Spring framework与Struts的不同之处,整合Spring与Struts有哪些方法,哪种最好,为什么?


4、 Hibernate中的update()和saveOrUpdate()的区别


5、 Spring对多种ORM框架提供了很好的支持,简单描述在Spring中使用Hibernate的方法,并结合事务管理。



答案:

1、 好莱坞原则不要打电话找我,我会打给你的。IoC将创建的职责从应用程序代码搬到了框架中。Spring对Setter注入和构造方法注入提供支持。(详见 http://martinfowler.com/articles/injection.html,以及http://www.redsaga.com /spring_ref/2.0/html/beans.html#beans-factory-collaborators)


2、 除application(详见Spring framework 2.0 Reference的3.4节bean的作用域)


3、 Spring是完整的一站式框架,而Struts仅是MVC框架,且着重于MVC中的C。Spring有三种方式整合Struts:使用 Spring 的 ActionSupport 类整合 Struts;使用 Spring 的 DelegatingRequestProcessor 覆盖 Struts 的 RequestProcessor;将 Struts Action 管理委托给 Spring 框架,动作委托最好。(详见使用Spring 更好地处理Struts 动作)

Spring 2.0新增一种方式:AutowiringRequestProcessor。(详见http://www.javaeye.com/topic/24239)


4、 saveOrUpdate()方法可以实现update()的功能,但会多些步骤,具体如下:

如果对象在该session中已经被持久化,不进行操作;

对象的标识符属性(identifier property)在数据库中不存在或者是个暂时的值,调用save()方法保存它;

如果session中的另一个对象有相同的标识符抛出一个异常;

以上皆不符合则调用update()更新之。


5、 在context中定义DataSource,创建SessionFactoy,设置参数;DAO类继承HibernateDaoSupport,实现具体接口,从中获得HibernateTemplate进行具体操作。

在使用中如果遇到OpenSessionInView的问题,可以添加OpenSessionInViewFilter或 OpenSessionInViewInterceptor。(详见Spring framework 2.0 Reference的12.2节Hibernate)

声明式事务需声明事务管理器,在context中设置指定属性,用确定和。

1.简述一下spring,hibernate,struts
2.说一说spring,hibernate,struts的优缺点

No comments: