Hibernate笔试总结
1.在Hibernate中,以下关于主键生成器说法错误的是(AC)。
A.increment可以用于类型为long、short或byte的主键。
B.identity用于如SQL Server、DB2、MySQL等支持标识列的数据库。
C.sequence用于如Oracle、SQL Server等支持序列的数据库。
D.native由Hibernate根据底层数据库自行判断采用何种主键生成策略,是由使用的数据库生成主键的值。
解析:A int相同
C SQL Server无序列
2.在Hibernate中,关于脏检查和刷新缓存说法正确的是(AB)。
A.当事务提交时,会发生脏检查
B.Session的flush( )方法是刷新缓存的方法
C.在执行Session的commit( )方法之前不会调用Session的flush( )方法
D.编写代码时,调用commit( )方法之前要调用flush( )方法
解析:C.commit是tx事务的方法 事务提交前必须调用
D.没有手动写过
刷新缓存:刷新缓存的事情就是脏检查
两种方式:1.事务提交 2.session.flush();
3.使用HQL查询所有部门信息,以下正确的是(AD)。
A.from Dept
B.select * from cn.jbit.demo.entity.Dept
C.select Dept from cn.jbit.demo.entity.Dept d
D.select d from Dept d
解析:很明显。
4.关于Query接口的list( )和iterate( )方法,说法正确的是(AD)。
A.执行list( )方法,查询所有符合条件的记录
B.执行iterate( )方法,查询所有符合条件的记录
C.执行list( )方法,查询出所有符合条件的主键值
D.执行iterate ( )方法,查询出所有符合条件的主键值
解析:B返回Iterate接口
C iterate ( )方法
5.在HQL中,关于Query接口绑定参数的方法,说法正确的是(ABCD)。
A.setParameter( )方法用于绑定任意类型的参数
B.setParameter( )有重载的方法
C.setProperties( )有重载的方法
D.setProperties( )方法用于绑定命名参数
解析:下图所示

6.在Hibernate中,关于以下映射配置,说法错误的是(D)。
<hibernate-mapping>
<class name="cn.jbit.hibernatedemo.entity.Emp" table="EMP" schema="scott">
<id name="empNo" column="EMPNO" type="java.lang.Integer">
<generator class="assigned"/>
</id>
<property name="salary" type="java.lang.Double" column="SAL"/>
<property name="hireDate" type="java.util.Date"/>
<many-to-one
name="dept"
column="DEPTNO"
class="cn.jbit.hibernatedemo.entity.Dept"
/>
</class>
</hibernate-mapping>
A.此配置信息描述了cn.jbit.hibernatedemo.entity.Emp类和EMP表的映射
B.描述的是scott用户的EMP表
C.<many-to-one>标签中的name属性值dept是cn.jbit.hibernatedemo.entity.Emp类的属性名
D.<many-to-one>标签中的column属性值DEPTNO是dept表的主键名
解析:D是Emp表的外键
7.在Hibernate映射文件中,关于inverse属性说法正确的是(ACD)。
A.inverse属性有两个值:true、false
B.<many-to-one>标签有inverse属性
C.<set>标签有inverse属性
D.inverse属性用于指定维护关联关系的那一方
解析:
inverse:维护关联关系
true: 自己不维护关联关系,对方维护
false:自己维护关联关系
<many-to-one>无inverse属性
8.在Hibernate映射文件中,关于延迟加载配置说法错误的是(BD)
A.<class>标签中lazy属性可选值:true、false
B.<set>标签中lazy属性可选值:true、proxy和no-proxy 无true
C.< set>标签中lazy属性可选值:true、extra和false
D.<many-to-one>标签中lazy属性可选值:proxy、true和false
解析:
类级别 true(默认),false
一对多和多对多 true(default),false,extra(加强延迟加载)
多对一(没有set) proxy(default),no-proxy,false
9.在Hibernate映射文件中,关于<component>标签说法正确的是(ABC)。
A.<component>标签用来映射组件类
B.<component>标签通过<parent>指定组件类所属的整体类
C.<component>标签通过<property>指定组件类的属性
D.<component>标签有id、name、class属性
解析:如图所示

10.MyBatis指定配置文件的根元素使用的是(B)。
A.<sqlMapConfig>
B.<configuration>
C.<setting>
D.<environments> MyBatis中连接数据库的根标签
11.在MyBatis中,ExecutorType的值包括(ABD)。
A.ExecutorType.SIMPLE
B.ExecutorType.BATCH
C.ExecutorType.EXECUTE
D.ExecutorType.REUSE
12.关于Hibernate缓存说法错误的是(CD)。
A.Hibernate缓存一般分为三类:一级缓存、二级缓存和查询缓存
B.Session的evict( )方法用于从缓存中清除指定的持久化对象
C.Session的clear( )方法用于刷新缓存
D.Session的flush( )方法用于从缓存中清除所有持久化对象
解析:CD刚好相反
14.关于Hibernate批量处理数据说法正确的是(CD)。
A.使用HQL进行批量操作,Hibernate不支持批量插入
B.使用JDBC API进行批量操作,SQL语句中涉及的数据会被加载到Session缓存,占用内存空间
C.使用Session进行批量操作,数据会被加载到Session缓存,需注意刷新并清空缓存
D.使用Session进行批量操作,适用于需要通过代码处理的复杂的业务逻辑场景
解析:A.HQL也是一种批量处理的一种方式。
B.只有session批量处理建立在缓存的基础上
16.关于HQL子查询中,说法错误的是(C)。
A.size( )或size用于获取集合中元素的数目
B.elements( )获取集合中的所有元用于素
C.any关键字用于子查询语句返回所有记录
D.in关键字与“=any”意思相同
解析:any返回单条记录。
17.关于原生SQL查询和命名查询,说法正确的是(ABC)。
A.执行原生SQL,需使用SQLQuery对象
B.SQLQuery是一个接口,继承了Query接口
C.Hibernate支持在映射文件中定义字符串形式的查询语句,这样的语句是命名查询语句
D.命名查询语句只能是HQL语句,不能是SQL语句
解析:原生sql也可命名查询
18.在 Hibernate中,关于映射Oracle中的BLOB和CLOB类型的方法,说法正确的是(BCD)。
A.CLOB类型只能映射为java.lang.String
B.BLOB类型可以映射为java.sql.Blob
C.BLOB类型可以映射为byte[]
D.CLOB类型可以映射为java.lang.String或java.sql.Clob
解析:A可映射为java.sql.Clob
19.在Hibernate中,关于Criteria运算方法说法错误的是( CD)。
A.Restrictions.ge( )方法等同于HQL运算符 >=
B.Restrictions.like("empName","s",MatchMode.START)方法用于查找姓名以s开头的员工
C.Restrictions.disjunction( )方法用于指定多个逻辑或
D.Restrictions.in( )方法只能用于数组
总结:最穷不过要饭,不死终会出头,很强势!!!
Hibernate笔试总结的更多相关文章
- 《使用Hibernate开发租房系统》内部测试笔试题
笔试总结 1.在Hibernate中,以下关于主键生成器说法错误的是( C). A.increment可以用于类型为long.short或byte的主键 B.identity用于如SQL Server ...
- JAVA后端笔试试题(一)
2017年6月7日,天气晴转阴.心情还不错. 上周六参加了自己的第一场笔试,感觉很糟糕,主要是对基础知识掌握不扎实,现在把笔试中的部分问题总结归纳如下,便于以后查看. 1.GC是什么?为什么要GC? ...
- java笔试面试(转载)
Java面试笔试题大汇总(最全+详细答案) 2016-02-01 15:23 13480人阅读 评论(8) 收藏 举报 分类: Java面试题(1) 声明:有人说, 有些面试题很变态,个人认为其实 ...
- java第一次笔试+面试总结
今天是自己第一次java笔试和面试,总体感觉比预期好一点. 笔试题第一面是问答题,主要考查java基础,一共有18题,我有6道题没有写出来.第二面主要是算法题,一共有8道题,我大概写出来4道题,第三面 ...
- hibernate多对多关联映射
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用
问题: Springboot启动报错: Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ...
- hibernate多对一双向关联
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- Hibernate中事务的隔离级别设置
Hibernate中事务的隔离级别,如下方法分别为1/2/4/8. 在Hibernate配置文件中设置,设置代码如下
- Hibernate中事务声明
Hibernate中JDBC事务声明,在Hibernate配置文件中加入如下代码,不做声明Hibernate默认就是JDBC事务. 一个JDBC 不能跨越多个数据库. Hibernate中JTA事务声 ...
随机推荐
- Linux文本比较-diff&awk
最近为了完成工作,需要将两个文件A.old和A进行比较,然后将A中新增加的部分保存到A中,其他部分删除.经过查找相关资料,发现有两种比较好的方法. 1. 使用diff命令 diff old.file ...
- JNI数据类型(转)
本文原创,转载请注明出处:http://blog.csdn.net/qinjuning 在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与 ...
- 背景虚化 Google Camera App Nokia Refocus HTC One M8 的 Duo景深相机
背景虚化是单反中一种比较常见的拍照形式,参看 http://www.techbang.com/posts/%2017842 https://refocus.nokia.com/
- javase基础笔记1——简介和发展
软件分为 系统软件 windows linux类 (unix)mac(麦金塔).数据库管理系统 unix linux 开源os(open source) 免费 开放 free os operation ...
- API和系统调用实现同一方法
“平安的祝福 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ” 一.基 ...
- 在C#程序中实现插件架构
阅读提示:这篇文章将讲述如何利用C#奇妙的特性,实现插件架构,用插件(plug-ins)机制建立可扩展的解决方案. 在.NET框架下的C#语言,和其他.NET语言一样提供了很多强大的特性和机制.其中一 ...
- DSP using Matlab 示例Example2.2
a. n = -2:10; x = [1:7,6:-1:1]; % generate x(n) [x11,n11] = sigshift(x,n,5); [x12,n12] = sigshift(x, ...
- PHP 垃圾回收机制
PHP垃圾回收说到底是对变量及其所关联内存对象的操作, 所以在讨论PHP的垃圾回收机制之前,先简要介绍PHP中变量及其内存对象的内部表示(其C源代码中的表示). PHP官方文档中将PHP中的变量划分为 ...
- 内核终端判断,微信?QQ?ipad?IE?移动?Google?opera……
$(document).ready(function(){ //判断访问终端 var browser={ versions:function(){ var u = navigator.userAgen ...
- ssl原理,非对称加密握手,对称加密传输
SSL的基本思想是用非对称加密来建立链接(握手阶段),用对称加密来传输数据(传输阶段).这样既保证了密钥分发的安全,也保证了通信的效率. SSL握手,单方服务器认证(一般的浏览器上网) SSL握手,双 ...