Hibernate笔试题剖析.docx
- 文档编号:9814150
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:22
- 大小:22.09KB
Hibernate笔试题剖析.docx
《Hibernate笔试题剖析.docx》由会员分享,可在线阅读,更多相关《Hibernate笔试题剖析.docx(22页珍藏版)》请在冰豆网上搜索。
Hibernate笔试题剖析
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)
下面一对多关联的配置中,存在哪些错误()。
column="customer_id"/> a) inverse属性不可以设置为false b) cascade属性不可设置为true c) class="com.x.entity.Order"应为type="com.x.entity.Order" d) column属性不可再 8) 执行下面的hql查询,关于返回值的说法,正确的是()。 selectu.username,u.userid fromcom.x.entity.Useru whereuisnotnull a) 语法错误,不能执行 b) 返回一个类型为List的实例 c) 返回一个数组 d) 当返回结果只有一条时,返回一个数组 9) 下面创建Criteria对象的语句中正确的是()。 a) Criteriac=query.createCriteria(); b) Criteriac=query.addCriteria(); c) Criteriac=session.createCriteria(); d) Criteriac=session.createCriteria(User.class); 10) 一般情况下,关系数据模型与对象模型之间有哪些匹配关系 a) 表对应类 b) 记录对应对象 c) 表的字段对应类的属性 d) 表之间的参考关系对应类之间的依赖关系 11) 以下关于SessionFactory的说法哪些正确? a) 对于每个数据库事务,应该创建一个SessionFactory对象 b) 一个SessionFactory对象对应一个数据库存储源。 c) SessionFactory是重量级的对象,不应该随意创建。 如果系统中只有一个数据库存储源,只需要创建一个。 d) SessionFactory的load()方法用于加载持久化对象 12) Customer类中有一个Set类型的orders属性,用来存放Order订单对象,在Customer.hbm.xml文件中,用哪个元素映射orders属性? a) b) c) d) 13) () a) none b) save c) delete d) save-update 14) 以下哪些属于Session的方法? a) load() b) save() c) open() d) saveOrUpdate() 15) 创建序列时,若未指定Cycle选项, 则当当前值大于MaxValue时将() a) 从MinValue重新开始循环 b) 重复使用MaxValue值 c) 执行出错 d) 使用随机值 16) 以下程序的打印结果是什么? tx=session.beginTransaction(); Customerc1=(Customer)session.load(Customer.class,newLong (1)); Customerc2=(Customer)session.load(Customer.class,newLong (1)); System.out.println(c1==c2); mit(); session.close(); a) 运行出错,抛出异常 b) 打印false c) 打印true d) 编译出错 17) 以下程序代码对Customer的name属性修改了两次: tx=session.beginTransaction(); Customercustomer=(Customer)session.load(Customer.class, newLong (1)); customer.setName(\"Jack\"); customer.setName(\"Mike\"); mit(); 执行以上程序,Hibernate需要向数据库提交几条update语句? a) 0 b) 1 c) 2 d) 3 18) 在持久化层,对象分为哪些状态? a) 瞬时(Transient) b) 新建(New) c) 脱管(Detached) d) 持久(Persistent) 19) 对于以下程序,Customer对象在第几行变为持久化状态? Customercustomer=newCustomer(); customer.setName(\"Tom\"); Sessionsession1=sessionFactory.openSession(); Transactiontx1=session1.beginTransaction(); //line1 session1.save(customer); //line2 mit(); //line3 session1.close();//line4 a) line1 b) line2 c) line3 d) line4 20) 对于以下程序,Customer对象在第几行变为游离状态? Customercustomer=newCustomer(); customer.setName(\"Tom\"); Sessionsession1=sessionFactory.openSession(); Transactiontx1=session1.beginTransaction(); //line1 session1.save(customer); //line2 mit(); //line3 session1.close();//line4 a) line1 b) line2 c) line3 d) line4 21) 以下哪一种检索策略利用了外连结查询? a) 立即检索 b) 延迟检索 c) 迫切左外连结检索 d) 迫切右外连结检索 22) 假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现什么情况 Sessionsession=sessionFactory.openSession(); tx=session.beginTransaction(); Customercustomer=(Customer)session.get(Customer.class,newLong (1)); mit(); session.close(); IteratororderIterator=customer.getOrders().iterator(); a) 编译出错 b) 编译通过,正常运行,不显示任何信息 c) 编译通过,正常运行,并显示出结果 d) 编译通过,但运行时抛出异常 23) POJO是(javabeandtovoPO)StudentUserTeacher a) PlainOldJavaObject b) ProgrammingObjectJavaObject c) PageOldJavaObject d) PlainObjectJavaOld 24) POJO的作用不是 a) 普通的Java对象映射数据库字段 b) 数据访问 c) 对象的赋值 d) 保存客户端对象 25) 实现equals和hashCode最显而易见的作用是 a) 比较两个对象标识符的值 b) 比较数据库的两条数据 c) 比较两个组建是否部署在同一个应用服务器上 d) 对象与字段的映射 26) 持久化状态前进行合法性检查,需要实现的接口是 a) ActionListener b) Lifecycle c) HttpServletRequest d) 持久化状态合法检查不需要实现接口 27) 在源代码中嵌入映射信息需要 a) XDoclet b) EJB c) Hibernate d) Spring 28) 所有的Hibernate,除了了都支持空(null)语义。 a) Collection b) Element c) Entity d) NodeList 29) 下面不能生成映射文档无 a) XDoclet b) Middlegen c) AndroMDA建模工具 d) MyEclipse 30) 元素把子对象的一些元素与父类对应的表的一些字段映射起来 a) Component b) Element c) Attribute d) ActionForm 31) 要实现一个自定义类型,需要实现的接口是或 a) org.hibernate.UserType b) org.hibernate.CompositeUserType c) org.hibernate.Session d) org.hibernate.CompositeUserType.UserType 32) ORM是ObjectRelationalMapping a) 对象关系映射 b) 对象实体映射 c) 数据传输对象 d) 数据访问对象 33) JDBC可以做哪三件事 a) 与数据库建立连接 b) 通过JDBC-API向数据库发送SQL语句 c) 通过JDBC-API执行SQL语句 d) 进行实体关系的映射 34) ORM有什么好处 a) 能进行关系对象的映射 b) 具有控制器功能 c) 能在服务器端保存客户端状态 d) 向DTO一项能传递数据 35) 常见的实体域对象是 a) 主动域对象(EJB) b) JavaBean对象(也称为POJO,PlainOldJavaObject) c) 控制器对象 d) ActionForm 36) 过程域对象在Hibernate中代表 a) 业务逻辑操作 b) 应用层操作 c) 数据库层操作 d) 组件对象操作 37) 常见的三层分别是 a) 应用层 b) 业务逻辑层 c) 数据访问层 d) 通讯层 38) 对象(实体的实例)对一个特定的Session来说,要么是一个____对象,要么是____对象 a) 瞬时 b) 持久化 c) 控制器 d) 数据传输对象 39) 如果你已知某个实例的持久化标识, 你可以使用Session的_____方法来获取它 a) load() b) loadAll() c) getAllData() d) init() 40) 如果你不能确定你要寻找的对象的持久化标识符, 那么你需要使用查询,使用Session的____方法 a) createQuery() b) query() c) queryAll() d) queryObject() 41) 使用Session的____会把对象的状态从数据库中移除 a) delete() b) remove() c) clear() d) removeAll() 42) Hibernate通过____接口,____接口和Type层次体系来访问元数据。 a) ClassMetadata b) CollectionMetadata c) Metadata d) CollectionMeta 43) HQL不支持聚合函数有 a) count(*) b) avg(…) c) count(…) d) count(? ) 44) ____和____子句都不支持算数表达式。 a) groupby b) orderby c) computeby d) insertby 45) 除了____和____外,查询语句都是大小写不敏感得到。 a) Java类 b) POJO类 c) 映射文件 d) 属性名称 46) fromCatascat,不仅仅返回____的实例,而且还返回____的实例 a) Cat b) Cat父类 c) Cat子类 d) Cat实现接口 47) ____代表升序,____代表降序 a) asc b) ansi c) desc d) description 48) 对原生SQL查询的控制是通过___接口进行的。 a) SQLQuery b) Session c) List d) Query 49) ____和____元素是用来连接关联以及将查询定义为预先初始化各个集合的。 a) b) c) d) 50) 一个命名查询可能会返回一个标量值,你必须使用___元素来指定字段的别名和Hibernate类型。 a) b) c) d) 51) 假设实体映射时有一个____的关联指向另外一个实体,在查询时必须也返回那个实体,否则会导致发生一个”columnnotfound”的数据库错误。 a) many-to-one b) many-to-many c) one-to-many d) one-to-one 52) 你可以把结果集映射的信息放在外部的____元素中,这样就可以在多个命名查询间,或者通过setResultSetMapping()API来访问。 a) b) c) d) 53) 使用Hibernate的QBC查询,要使用SQL中的类似selectcount(*)fromtablename方法求出记录数,必须使用哪一个类。 a) Restrictions b) Projections c) Criteria d) Criteron 54) 在Hibernate中,关于数据库的方言,下面哪个说法是正确的 a) 可以不写数据库方言 b) 数据库方言没有作用,可以随便写 c) 有通用的数据库方言可以使用 d) 数据方言对应于每个数据库,主要用于产生SQL语句 55) 下面不属于持久化的是 a) socket 把对象转换称字符串的形式通过网络传输,在另一端接收到这个字符串后能把对象还原出来 b) 把程序数据从数据库中读出来 c) 从XML配置文件中读取程序的配置信息 d) 把程序数据保存为文件 56) 下面不是Hibernate映射文件中包含的内容。 a) 数据库连接信息 b) Hibernate属性参数 c) 主键生成策略· d) 属性数据类型 57) 下面的程序执行后没有报错,但数据总保存不到数据库, 最可能的原因是 publicstaticvoidimain(String[]args){ SessionFactorysf=newConfigration().configure().buildSessionFactory(); Sessionsession=sf.openSession(); Medalmedal=newMedal(); medal.setOwner(“totong”); medal.setType(“Goldmedal”); session.save(user); session.close(); } a) 配置文件配置有误 b) 没有在配置文件中包含对映射文件的声明 c) 配置文件配置有误 d) 没有对持久化操作捕捉异常 e) 没有开启事务 58) 下列属于多对一关系的是__ a) 书和作者 b) 手机和生产厂家 c) 用户和发布的出租信息 d) 士兵和班长 59) 已知wage.getItems().size()的值是1。 要想使执行session.update(wage)时自动执行 session.update(wage.getItems().get(0)),必须配置 a) b) c) d) 60) 已知系统中的tbl_user表对应的实体类是User, 下列HQL语句中正确的是 a) fromUser b) select*fromtbluser c) selectUserfromUser d) fromUseruwhereu.uname=”15”
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Hibernate 笔试 剖析
![提示](https://static.bdocx.com/images/bang_tan.gif)