Hibernate笔试题讲解 下载本文

内容发布更新时间 : 2024/12/29 0:23:53星期一 下面是文章的全部内容请认真阅读。

1) 在三层结构中,数据访问层承担的责任是() a) 定义实体类 b) 数据的增删改查操作 c) 业务逻辑的描述 d) 页面展示和控制转发 2) 下面关于数据持久化概念的描述,错误的是 a) 保存在内存中数据的状态是瞬时状态 b) 持久状态的数据在关机后数据依然存在 c) 数据可以由持久状态转换为瞬时状态 d) 将数据转换为持久状态的机制称为数据持久化

状态:瞬时,持久,脱管 3) 下面关于Hibernate的说法,错误的是( a) Hibernate是一个“对象-关系映射”的实现 b) Hibernate是一种数据持久化技术 c) Hibernate是JDBC的替代技术 d) 使用Hibernate可以简化持久化层的编码 4) Hibernate配置文件)中,不包含下面的() a) “对象-关系映射”信息 b) 实体间关联的配置 c) show_sql等参数的配置 d) 数据库连接信息 5) 在Hibernate关系映射配置中,inverse属性的含义是()。〔〕

a) 定义在节点上,声明要负责关联的维护 b) 声明在节点上,声明要对方负责关联的维护 c) 定义在节点上,声明对方要负责关联的维护 d) 声明在节点上,声明要负责关联的维护 6) 在使用了Hibernate的系统中,要想在删除某个客户数据的同时

删除该客户对应的所有订单数据,下面方法可行的是(。

a) 配置客户和订单关联的cascade属性为save-update b) 配置客户和订单关联的cascade属性为all c) 设置多对一关联的inverse属性为true d) 设置多对一关联的inverse属性为false

7)

下面一对多关联的配置中,存在哪些错误()。

a) b) c) d)

inverse属性不可以设置为false cascade属性不可设置为true

class=\应为type=\ column属性不可再节点内设置

8)

执行下面的hql查询,关于返回值的说法,正确的是()。 select u.username,u.userid from com.x.entity.User u where u is not null a) b) c) d)

语法错误,不能执行

返回一个类型为List的实例 返回一个数组

当返回结果只有一条时,返回一个数组

9) 10) 11) 12)

下面创建Criteria对象的语句中正确的是()。 a) b) c) d)

Criteria c = query.createCriteria(); Criteria c = query.addCriteria(); Criteria c = session.createCriteria();

Criteria c = session.createCriteria(User.class);

一般情况下,关系数据模型与对象模型之间有哪些匹配关系 a) b) c) d)

表对应类

记录对应对象

表的字段对应类的属性

表之间的参考关系对应类之间的依赖关系

以下关于SessionFactory的说法哪些正确? a) b) c) d)

对于每个数据库事务,应该创建一个SessionFactory对象 一个SessionFactory对象对应一个数据库存储源。 SessionFactory是重量级的对象,不应该随意创建。 如果系统中只有一个数据库存储源,只需要创建一个。 SessionFactory的load()方法用于加载持久化对象

Customer类中有一个Set类型的orders属性,用来存放Order订单对象,在Customer.hbm.xml文件中,用哪个元素映射orders属性? a)

13) 14) 15) 16)

b) c) d)

元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取什么值?() a) b) c) d)

none save delete

save-update

以下哪些属于Session的方法? a) b) c) d)

load() save() open()

saveOrUpdate()

创建序列时,若未指定Cycle选项, 则当当前值大于MaxValue时将() a) b) c) d)

从MinValue重新开始循环 重复使用MaxValue 值 执行出错 使用随机值

以下程序的打印结果是什么? tx = session.beginTransaction();

Customer c1=(Customer)session.load(Customer.class,new Long(1)); Customer c2=(Customer)session.load(Customer.class,new Long(1)); System.out.println(c1==c2); tx.commit(); session.close(); a) b) c) d)

运行出错,抛出异常 打印false 打印true 编译出错