struts+spring+hibernate(2)

时间:2025-06-29

struts+spring+hibernate

反遇到数据库的操作上,Spring就会拿到自己管理的数据访问对象(DAO)来完成相应的数据库操作,如果是多个操作,Spring可以帮你做到这些操作之间的事务一致性。


hibernate的运行机制是什么?
Hibernate应该是建立在JDBC基础上的一个开源的ORM映射框架
它很好的封装了实体映射实现,提供友好的实体操作接口,以及基于
类SQL(HQL)的查询接口,在开发中可以减少编写SQL相关代码,提高效率和
减少出错,利于维护~

Hibernate应该是建立在JDBC基础上的一个开源的ORM映射框架
它很好的封装了实体映射实现,提供友好的实体操作接口,以及基于
类SQL(HQL)的查询接口,在开发中可以减少编写SQL相关代码,提高效率和
减少出错,利于维护~

struts+spring+hibernate面试题

1 Action是不是线程安全的?如果不是有什么方式可以保证Action的线程安全?如果是,说明原因
Action不是线程安全的。只要不申明类变量就可以保证线程安全。因为只存在一个Action实例,所有线程会共享变量。

声明局部变量,或者扩展RequestProcessor,让每次都创建一个Action,或者在spring中用scope="prototype"来管理


2.MVC,分析一下struts是如何实现MVC的
m:JavaBean 或结合 EJB 组件或者pojo构成
c:ActionServlet 、action来实现
v:一组 JSP 文件及其标签构成。


3.struts中的几个关键对象的作用(说说几个关键对象的作用)
Action:控制器类,ActionForm:表单对象,DynaValidatorForm:动态form,ActonMapping:配置文件中action节点的信息......


4.说说AOP和IOC的概念以及在spring中是如何应用的
AOP:面向切面编程,ioc:依赖注入;声明式事务和编程式事务积极一些通用部分


5.Hibernate有哪几种查询数据的方式
hql查询,sql查询,qbc条件查询


6.load()和get()的区别
hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,load()默认支持延迟加载,在用到对象中的其他属 性数据时才查询数据库,但是万一数据库中不存在该记录,只能抛异常ObjectNotFoundEcception;所说的load方法抛异常是指在使用 该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。由于session中的缓存对于hibernate来说是个相当廉价的资源,所 以在load时会先查一下session缓存看看该id对应的对象是否存在,不存在则
创建代理(load时候之查询一级缓存,不存在则创建代理)。 get()首先会在一级缓存找数据,没有就去二级缓存找,没有就去数据库找,没有就返回null ;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。

简单地说:如果查询不到数据load()会抛异常

struts+spring+hibernate(2).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219