当前位置:文档之家› 对象关系映射-复习

对象关系映射-复习

1、在Hibernate中,下列说法正确的有()。

【选三项】A.Hibernate是一个开放源代码的对象关系映射框架B.Hibernate对JDBC进行了轻量级的对象封装C.Hibernate可以大大减少操作数据库的工作量D.Hibernate提供了数据查询机制,但没有提供恢复机制2、关于Hibernate,下列说法错误的是()。

A.Hibernate是一个对象-关系映射工具B.在MVC模式中,Hibernate属于控制层C.Hibernate在JDBC的方式上进行封装,以简化JDBC方式繁琐的编码工作D.在Hibernate中,可以通过xml格式的配置文件保存对象-关系的映射信息3、在Hibernate中,下列关于SessionFactory说法正确的有()。

【选两项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.一个SessionFactory实例对应一个数据存储源4、在Hibernate中,下列关于Session说法正确的有()。

【选三项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.Session也被称为持久化管理器,它提供了和持久化相关的操作5、在Hibernate中,下列关于Transaction说法正确的有()。

【选三项】A.事务Transaction为应用程序指定以原子操作单元为范围的对象B.在对数据库进行增加、修改和删除操作时一定要加上TransactionC.在对数据库进行查询操作时一定要加上TransactionD.获得Transaction的方法:Transaction tr = session.beginTransaction();6、在Hibernate中,如果数据库是MySql或者SQLServer,则generator属性值不可以使用()。

A.hiloB.nativeC.sequenceD.indentity7、在Hibernate中,如果数据库是Oracle或者DB2,则generator属性值不可以使用()。

A.hiloB.nativeC.sequenceD.Indentity8、在Hibernate中,下列哪个选项不属于Session的方法()。

A.loadB.saveC.openD.delete9、在Hibernate中,generator属性值如果是native,则表示()。

A.由Hibernate自动以自增的方式生成标识符,每次增量为1B.由Hibernate自动以自增的方式生成标识符,每次增量为自定义C.根据底层数据库对自动生成标识符的支持来选择。

D.由Java应用程序负责生成标识符10、Hibernate增加数据的时候,可以调用session的()方法。

【选两项】A.saveB.updateC.addD.saveOrUpdate11、Hibernate对JDBC访问数据库的代码进行了封装,从而大大简化了数据访问层的重复性代码,它是针对三层架构中()的解决方案。

A.表现层B.业务逻辑层C.持久化层D.数据库系统12、Hibernate是一个优秀的Java持久化层解决方案,那么数据的持久化指的是()。

A.数据在程序退出后就不复存在B.数据在程序退出后以文件等形式保存在存储设备中C.数据的内容是不变的,处于静态中D.数据的内容是变化的13、下列选项不属于持久化的是()。

A.将对象转换为字符串的形式通过网络传输,在另一端接收到该字符串后能将对象还原B.将程序数据从数据库中读取出来C.从XML配置文件中读取程序的配置信息D.将程序数据保存为文件14、使用Hibernate 技术实现数据库持久化时,下列()不在Hibernate配置文件中。

A.数据库连接信息B.数据库类型(dialect)C.show_sql参数D.数据库表和实体的映射信息15、在Hibernate中,inverse属性值为()时,会标识被控方。

A.allB.falseC.trueD.none16、在Hibernate中,如果需要标识主控方,则inverse属性值应为()。

A.allB.falseC.trueD.none17、在Hibernate中,从性能方面考虑,inverse属性值通常设置为()。

A.allB.falseC.trueD.none18、Hibernate通过映射文件中的<generator>子元素来设定标识符生成器,下列选项哪些是Hibernate提供的内置实现()。

【选三项】A.hiloB.nativeC.assignD.indentity19、三层结构是一种典型的应用软件分层结构,这三层分别是()。

【选三项】A.表述层B.业务逻辑层C.控制层D.数据层20、持久化技术封装了数据访问的细节,为大部分业务逻辑提供了面向对象的API。

数据持久化具有以下3个方面的特点,分别是()。

【选三项】A.通过持久化技术能够减少访问数据库中数据的次数,提供应用程序速度(?????)B.提高代码的可重用性C.松耦合,使持久化的实现不依赖于底层数据库及上层业务逻辑D.具有更好的可扩展性21、在ORM中,面向对象概念中的对象与面向关系概念中的()相对应。

A.表B.表的行C.表的列D.表中行的数据22、一般情况下,关系数据模型和对象模型之间有哪些匹配关系()。

【选两项】A.表对应对象B.记录对应对象C.表的字段对应类方法D.表之间的参考关系对应类之间的依赖关系23、在Hibernate中,一个持久化类的实例可能存在的状态有哪些()。

【选三项】A.瞬态B.持久态C.隔离态D.游离态24、在Hibernate的映射文件中,id节点的property元素的()表示指定类的属性映射的表的字段名。

A.nameB.typeC.columnD.lazy25、在Hibernate的实体类映射文件中,class节点下必须有一个id节点,其中unsaved-value属性的默认值为()。

A.nullB.noneC.tureD.false26、下列选项关于Configuration的说法不正确的是()。

A.Configuration类的构造方法用于将默认路径下的hibernate.cfg.xml(或hibernate.properties)配置文件中的配置信息读入到内存中B.Configuration对象用于配置并启动HibernateC.获得Configuration的方法:Configuration config= new Configuration();D.Hibernate应用通过Configuration实例指定对象-关系映射文件的位置或者动态配置Hibernate的属性27、在Hibernate中,当cascade属性值为()时,表示不进行级联操作。

A.allB.noC.noneD.delete28、在Hibernate中,如果需要进行级联删除,则cascade属性值可为()。

【选两项】A.allB.save-updateC.noneD.delete29、在Hibernate中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下列方法可行的有()。

【选两项】A.配置客户和订单关联的cascade属性为save-updateB.配置客户和订单关联的cascade属性为allC.设置多对一关联的inverse属性为trueD.设置多对一关联的inverse属性为false30、在Hibernate中,<set>元素有一个cascade属性,如果希望Hibernate 级联保存集合中的对象,则cascade属性应该取什么值()。

A.noneB.saveC.save-updateD.delete31、在Hibernate中,Customer类中有一个Set类型的orders属性,用于存放Order订单对象,在Customer.hbm.xml文件中,可以用()元素映射orders属性。

A.<set>B.<one-to-many>C.<many-to-one>D.<property>32、在Hibernate中,下列一对多关联的配置中,存在哪些错误()。

【选两项】<set name="orders" inverse="false" cascade="true"><one-to-many class="com.scce.pojo.Order"column="customer_id" /></set>A.inverse属性不可以设置为falseB.cascade属性不可以设置为trueC.class="com.scce.pojo.Order"应为type="com.scce.pojo.Order" D.column属性不可以在<one-to-many>节点内设置33、在Hibernate的HQL查询中,下列说法正确的是()。

A.可以调用用户自定义函数B.不可以调用用户自定义函数C.支持子查询D.支持分页查询34、在Hibernate的HQL查询中,下列说法不正确的是()。

A.在Hibernate3中,可以使用update、delete子句B.在Hibernate3中,不可以使用update、delete子句C.HQL是基于SQL的D.HQL提供了更多面向对象的封装35、在Hibernate的HQL查询中,setMaxResults(3)方法中参数值3指的是()。

A.从第3条记录开始B.从第4条记录开始C.查询3条记录D.查询4条记录36、在Hibernate的HQL查询中,setFirstResults(3)方法中参数值3指的是()。

A.从第3条记录开始B.从第4条记录开始C.查询3条记录D.查询4条记录37、下面代码的执行效果是()。

String hql = "from TblStudent s order by s.score asc";Query query = session.createQuery(hql);query.setFirstResult(0);query.setMaxResults(5);return query.list();A.返回分数最高的5个学生B.返回分数最高的6个学生C.返回分数最低的5个学生D.返回分数最低的6个学生38、在Hibernate的HQL查询中,下列说法不正确的是()。

A.HQL子句本身的大小写没有差异,但类名和属性名必须区分大小写B.HQL支持where子句C.HQL支持as子句D.where、as关键字区分大小写39、在Hibernate的HQL查询中,有数据库表(dept)对应的对象名称为Dept,下列HQL写法正确的有()。

相关主题