Hibernate复习题1含答案要点.docx
- 文档编号:11462406
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:22
- 大小:23.04KB
Hibernate复习题1含答案要点.docx
《Hibernate复习题1含答案要点.docx》由会员分享,可在线阅读,更多相关《Hibernate复习题1含答案要点.docx(22页珍藏版)》请在冰豆网上搜索。
Hibernate复习题1含答案要点
美斯坦福在线考试系统荆州理工G3
科目:
3总分:
100分时间:
60分钟
一、单选题(共45题,每题2分,说明:
选择一项正确的答案)
1、
下面关于的说法,错误的是()
A
B
C
封装
D
、是一个“对象-关系映射”的实现、是一种数据持久化技术
、使用可以简化持久化层的编码
参考答案:
C
、是的替代技术他是对做了轻量级的对象
2、
在使用了的系统中,要想在删除某个客户数据
的同时删除该客户对应的所有订单数据,下面方法可行的是()
A、配置客户和订单关联的属性为
B、配置客户和订单关联的属性为
C、设置多对一关联的属性为
D、设置多对一关联的属性为
参考答案:
B
详解
F面一对多关联的配置中,存在哪些错误()
v>
A、属性不可以设置为
B、属性不可设置为
C、""应为""
D、属性不可再v>节点内设置
参考答案:
B
F面创建对象的语句中正确的是()
A
、c=();
B
、c=();
C
、c=();
D
、c=();
参考答案:
D
5、
下面关于映射文件配置中属性说法正确的是
()
详解
A
B
、动态的修改,如果为
、动态的修改,如果为
只改变有改变的属性
只改变没有改变过的
属性
C
、动态的修改,如果为
改变所有的属性
D
、以上说法都错参考答案:
A
面关系对象的状态说话正确的是()临时
持久化游离
A、的对象只有一种状态
B、的对象有2种状态
C、的对象有3种状态
D、的对象有4种状态
参考答案:
C
7、
对象从瞬时到持久状态转换的方式有()
A、调用的方法
B、调用的方法
C、调用的方法
D、调用的方法
参考答案:
A
J2中往往使用封装业务实体,封装业务逻辑,调用()
A、实体、会话、实体、会话
B、实体、会话、会话、实体
C、会话、实体、实体、会话
D、会话、实体、会话、实体
参考答案:
B
9、
分为()三种类型
A、会话、实体、
B、会话、实体、消息驱动
C、、、
D、实现类、接口类、接口类
参考答案:
B
详解
A
、无状态要保存客户端的状态,
同客户端是
一对一
B
、有状态要保存客户端的状态,
同客户端是
一对一
C
、他们都要保存客户端的状态,同客户端是
一对一
D
、以上说法都不对参考答案:
B
11、
有以下代码段,下面说法正确的是()p65
—n
=?
1";
(1)
=();⑵
(0,"2000-12-05");(3)
=();(4)
A、第一行有错,必须为参数起个名字
B、第三行有错误,(0,
"2000-12-05")应为(1,"2000-12-05");
C、第四行没有错误
、这些语句没有错误参考答案:
B
12、
在3.0中用来保存一个对象的方法是()
A、
B、
C、
D、
参考答案:
C
13、
在J2中,和组件必须在()容器中才能运行
A、
B、客户端
C、
参考答案:
C
14、
在J2中,组件必须在()容器中才能运行
A、
B、客户端
C、
D、
参考答案:
D
15、在三层结构中,数据访问层承担的责任是)
A、定义实体类
B、数据的增删改查操作
C、业务逻辑的描述
、页面展示和控制转发
参考答案:
B
v>元素有一个属性,
如果希望级联保存集合
16
中的对象,属性应该取(
)值
A、
B、
C、
D、
参考答案:
D
以下程序的打印结果是
17
=();c1=()(
(1));
c2=()(
(1));
(c12);
();
();
A、运行出错,抛出异常
B、打印
C、打印
D、编译出错
参考答案:
C
18、以下程序代码对的属性修改了两次:
=();
()(,
(1));
();
执行以上程序,需要向数据库提交()
条语句
离状态
参考答案:
B
19、
对于以下程序,对象在第(
P82
();
(\"\");
1();
1=1();//1
1();//2
1();//3
1();//4
)行变为游
ABCD
、1
、2
、3
、4
参考答案:
D
详解20
A、立即检索
B、延迟检索
C、迫切左外连结检索
D、迫切右外连结检索
参考答案:
C
21、
假设对类的集合米用延迟检索策略,编译或运行以下程序,会出现()
();
=();
()(
(1));
();
();
()();
A、编译出错
B、编译通过,正常运行,不显示任何信息
C、编译通过,正常运行,并显示出结果
22
A
B
C
D
23
、编译通过,但运行时抛出异常
参考答案:
D
在源代码中嵌入映射信息需要(
参考答案:
A
的好处包括(
、能进行关系对象的映射
、具有控制器功能、能在服务器端保存客户端状态、向一项能传递数据
参考答案:
A
24、已知某个实例的持久化标识,可以使用的)方法来获取它
A
B
C
D
、()
、()
、()
、()参考答案:
A
则需
25、如果不确定所寻找对象的持久化标识符,要使用查询,使用的()方法
A、()
B、()
C、()
D、()
参考答案:
A
对原生查询的控制是通过(
)接口进行
移除
26
、
使用的(),会把对象的状态从数据库中
A
、()
B
、()
C
、()
D
、()参考答案:
A
A、
B、
C、
D、
参考答案:
A
28、
可以把结果集映射的信息放在外部的(
)元素中,这样就可以在多个命名查询间或者通过()来访问
A、v>
B、v>
C、v>
D、v>
参考答案:
A
29、
使用的查询,要使用中的类似(*)
方法求出记录数,必须使用()类
A、
B、
C、
D、
参考答案:
B
30、在中,关于数据库的方言,下面说法正确的是)
A、可以不写数据库方言
B、数据库方言没有作用,可以随便写
C、有通用的数据库方言可以使用
D、数据方言对应于每个数据库,主要用于产
生语句
参考答案:
D
A、把对象转换称字符串的形式通过网络传输,
在另一端接收到这个字符串后能把对象还原出来
B、把程序数据从数据库中读出来
C、从配置文件中读取程序的配置信息
D、把程序数据保存为文件
参考答案:
A
32、下面的程序执行后没有报错,但数据总保存不到数据库,最可能的原因是()
([]){
()()();
();
();
(“”);
(“”);
();();}
A、配置文件配置有误
、没有在配置文件中包含对映射文件的声明
C、配置文件配置有误
D、没有对持久化操作捕捉异常
E、没有开启事务
参考答案:
E
33、
已知()()的值是1。
要想使执行()时自动执行
(()(0)),必须配置(
)
A
、v
””、
>…
•v>
»»
B
、v
>…
•v>
»»
C
、v
>…
•v>
D
、v
>
…v>
参考答案:
D
A
、定义在v>节点上,声明要负责关联的维
护
B
、声明在v>节点上,声明要对方负责关联
的维护
C
、定义在v>节点上,声明对方要负责关联
的维护
D
、声明在v>节点上,声明要负责关联的维
护
参考答案:
B
35、执行下面的查询,关于返回值的说法,正确的是()
u
u
A、语法错误,不能执行
B、返回一个类型为的实例
C、返回一个数组
D、当返回结果只有一条时,返回一个数组
参考答案:
B
以下哪一种检索策略利用了外连结查询
A、立即检索
B、延迟检索
C、迫切左外连结检索
D、迫切右外连结检索
参考答案:
C
37、
是()
器上
实现和最显而易见的作用是(
详解38
A、比较两个对象标识符的值
B、比较数据库的两条数据
C、比较两个组建是否部署在同一个应用服务
D、对象与字段的映射
参考答案:
A
39、
在源代码中嵌入映射信息需要()
所有的,除了()都支持空()语义
A、
B、
C、
D、
参考答案:
A
41、
()元素把子对象的一些元素与父类对
应的表的一些字段映射起来
42
、
不支持聚合函数有()
ABCD
、(*)
、(…)
、(…)
、(?
)
参考答案:
D
43、
假设实体映射时有一个()的关联指向
另外一个实体,在查询时必须也返回那个实体,否则会导致发生一个”
”的数据库错误
参考答案:
D
A
B
C
D
生语句
在中,关于数据库的方言,下面说法正确的是
、可以不写数据库方言
、数据库方言没有作用,可以随便写
、有通用的数据库方言可以使用
、数据方言对应于每个数据库,主要用于产
参考答案:
D
45
列属于多对一关系的是(
、书和作者
、手机和生产厂家、用户和发布的出租信息、士兵和班长
确的答案)
[选三项]
A、()
B、()
C、()
D、()
参考答案:
2、
有如下代码=();
("后勤部");("2001-03-02");
();
参考答案:
D
二、多选题(共5题,每题2分),说明:
选择多项正
1、从持久化状态到临时状态转换的方法有()
=();
面说明正确的有()[选两项]
A、处于生命周期
B、生命周期结束
C、处于持久化状态
D、处于游离状态
3
见书P84
缓存主要从哪些方面发生作用(
)[选两项]
参考答案:
A、通过主键值加载数据
B、查询数据
C、立即加载
D、延迟加载
参考答案:
4
、
什么是一级缓存()[选两项]
A
B
C
法被卸除
D
、一级缓存是的缓存
、一级缓存是的缓存
、第级缓存为必需,不允许且事头上也无
、第一级缓存可以设置
参考答案:
5
、
不适合放入一级缓存的有()[选三项]
ABCD
、常被修改的数据
、绝不容许出现并发的数据,例如财务数据
、与其他应用共享的数据
、常用数据
参考答案:
详解5
中和设置属性默认值
允许我们在映射文件里控制和语句的内容•比如在映射文件中<元
素中的属性设置成为,那么这个字段,将不被包括在基本的语句中,修改的时候,将不包括这个字段了同理动态语句的配置也是很常用的.下面介绍配置语句的具体属性:
1)<>元素属性:
设置为,在语句中不包含这个字段,表示永
远不会被插入,默认
2)<>元素属性:
设置为,在语句中不包含这个字段,表示永
远不会被修改,默认
3)<>元素属性:
设置为就是把所有的<>元素的属性设置为
了,说明这个对象不会被更新,默认
4)<>元素属性:
设置为,表示对象的时候,生成动态的语句,
如果这个字段的值是就不会加入到语句当中•默认
5)<>元素属性,设置为,表示对象的时候,生成动态的语句,
如果这个字段的值是就不会被加入到语句中,默认
6)<>元素属性:
设置为,表示把所有的<>元素的属性设置为
默认
7)<>元素属性:
设置为,表示把所有的<>元素的属性设置为
默认
生成动态语句的消耗的系统资源(比如,内存等)是很小的,
所以不会影响到系统的性能,如果表中包含N多字段,建议把属性和属性设置为,这样在插入和修改数据的时候,语句中只包括要插入
或者修改的字段.可以节省语句的执行时间,提高程序的运行效率.
详解10
现实中,很多朋友对两种存在误解,认为有状态是实例一直存在,保存每次调用后的状态,并对下一次调用起作用,而认为无状态是每次调用实例化一次,不保留用户信息。
仔细分析并用实践检验后,你会发现,事实恰好相反:
有状态和无状态会话的本质区别是它
们的生命期。
首先解释一个下面要用到的概念一一用户:
的用
户实际上就是直接调用的类的实例,甚至是这个实例的某个方法。
同一个类的不同实例对于来说是不同的用户。
有状态会话:
每
个用户有自己特有的一个实例,在用户的生存期内,保持了用户的信息,即“有状态”;一旦用户灭亡(调用结束或实例结束),的
生命期也告结束。
即每个用户最初都会得到一个初始的。
无状态
会话:
一旦实例化就被加进会话池中,各个用户都可以共用。
即使用户已经消亡,的生命期也不一定结束,它可能依然存在于会话池中,供其他用户调用。
由于没有特定的用户,那么也就不能保持某一用户的状态,所以叫无状态。
但无状态会话并非没有状态,
如果它有自己的属性(变量),那么这些变量就会受到所有调用它的用户的影响,这是在实际应用中必须注意的。
详解20
提供了3种检索策略:
l延迟检索;
l立即检索;
l迫切左外连接;
提供2种方式来确定检索策略,一中是在配置文件当中,另外一种是在程序种设置。
当然,如果你在程序中设置了检索策略,那么你在配置文件中的设置也就无效了。
另外的一种情况是会忽略配
置文件的设置,而总是采用迫切左外连接。
详解38
原因是由于在中,需要保证持久化标识(数据库的行)和仅在特定会话范围内的标识是等值的。
我们必然希望有明确的语义,以避免混合了来自不同会话中获取的实例,从而确保数据的持久化不会发
生错误。
若使用过,你会知道中是不允许存储重复值的,这也是为什么推荐在多表关联的映射中采用作为存储实体对象的主要原因。
详解3
1明确和的作用
决定是否把对对象中集合的改动反映到数据库中,所以只对集合起作用,也就是只对或有效(因为只有这两种关联关系包含集合,而和只含有关系对方的一个引用)。
决定是否把对对象的改动反映到数据库中,所以对所有的关联关系都起作用(因为关联关系就是指对象之间的关联关系)。
2属性:
所描述的是对象之间关联关系的维护方式。
只存在于集合标记的元素中。
提供的集合元素包括<><><>>>
属性的作用是:
是否将对集合对象的修改反映到数据库中。
属性的默认值为,表示对集合对象的修改会被反映到数据库中;的为主动方,由主动方负责维护关联关系。
””表示对集合对象的修改不会被反映到数据库中。
为了维持两个实体类(表)的关系,而添加的一些属性,该属性可能在两个实体类(表)或者在一个独立的表里面,这个要看这双方直接的对应关系了:
这里的维护指的是当主控放进行增删改查操作时,会同时对关联关系进行对应的更新。
一对多:
该属性在多的一方。
应该在一方的设置,多的一方设置(多的一方也可以不设置属性,因为默认值是),这说明关联关系由多的一方来维护。
如果要一方维护关系,就会使在插入或是删除"一"方时去"多"方的每一个与这个"一"的对象有关系的对象。
而如果让"多"方面维护关系时就不会有操作,因为关系就是在多方的对象中的,直指插入或是删除多方对象就行了。
显然这样做的话,会减少很多操作,提高了效率。
注:
单向关联关系中,不可以设置"",因为被控方的映射文件中没有主控方的信息。
多对多:
属性在独立表中。
属性的默认值为。
在多对多关联关系中,关系的两端不能都设为,即默认的情况是不对的,如果都设为,在做插入操作时会导致在关系表中插入两次关系。
也不能都设为,如果都设为,任何操作都不会触发对关系表的操作。
因此在任意一方设置,另一方。
一对一:
其实是一对多的一个特例的设置也是一样的,主要还是看关联关系的属性在哪一方,这一方的。
多对一:
也就是一对多的反过来,没什么区别。
2属性
属性的作用是描述关联对象进行操作时的级联特性。
因此,只有涉及到关系的元素才有属性。
具有属性的标记包括>>>>>>>>
注意:
>和>是用在集合标记内部的,所以是不需要属性的。
级联操作:
指当主控方执行某项操作时,是否要对被关联方也执行相同的操作。
3和的区别
作用的范围不同:
是设置在集合元素中的。
对于所有涉及到关联的元素都有效。
<><>没有属性,但有属性
执行的策略不同
会首先判断集合的变化情况,然后针对变化执行相应的处
理。
是直接对集合中每个元素执行相应的处理
执行的时机不同
是在执行语句之前判断是否要执行该语句
则在主控方发生操作时用来判断是否要进行级联操作
执行的目标不同
对于<>和<>处理方式不相同。
对于<>,所处理的是对被关联表进行修改操作。
对于<>,所处理的则是中间关联表
不会区分这两种关系的差别,所做的操作都是针对被关联的对象。
总结:
<>中,建议””,由“”方来进行关联关系的维护<>中,只设置其中一方””,或双方都不设置,通常情况下都不会使用。
特别是删除,一定要慎重。
操作建议
一般对和不设置级联,这要看业务逻辑的需要联。
;对和设置级
在关联关
关联关系中,一端设置””,另一端设置为”系中,设置””,由多端来维护关系表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Hibernate 复习题 答案 要点