tmobst2an
- (单选题)与下面代码效果相同的HQL 语句是( )。 Criteria criteria = session.createCriteria(User.class); criteria.add(Restrictions.like("name","admin%")); List result = criteria.list();
- A)from User where name like 'admin%'
- B)from User where name like '%admin%'
- C)from name where Restrictions like 'admin%'
- D)select u.name from Useras u where u. Restrictions like 'admin%'
- 正确答案为:A
解析:仔细看题干Restrictions.like("name","admin%")是查询name中的admin%
- 2.(单选题)Hibernate增加数据时可以调用Session的( )方法。
- A)save()
- B)update()
- C)delete()
- D)get()
- 解析:增加数据用save()方法,update()是更新,delete()是删除,get()是取数据
- 3.(单选题)setMaxResult(3)方法中,参数值3是指( )。
- A)从第3条记录开始
- B)从第4条记录开始
- C)查询3条记录
- D)查询4条记录
- 解析:setMaxResult方法是查询多少条语句,参数3就代表查询3条
- 4.(单选题)由持久化状态向游离状态转变的方法不包括( )。
- A)临时状态
- B)无引用状态
- C)持久化状态
- D)游离状态
- 正确答案为:C
解析:仔细看题干
- 5.(单选题)以下哪个 Hibernate 主键生成策略是实现主键按数值顺序递增的( )
- A)increment
- B)identity
- C)sequence
- D)native
- 解析:increment 生成策略:当 Hibernate 准备在数据库表中插入一条新记录时,首先从数据库表中获取当 前主键字段的最大值,然后在最大值基础上加 1,作为当前持久化对象的标识符属性值。这种策略即 increment 生成策略,用其生成的标识符属性的类型可以是 long、short、int 及其封装类的类型 identity 生成策略:在 MS SQL Server、MySQL 和 DB2 等数据库中可以设置表中某一个字段的数值自 动增长,identity 生成策略通过这种方式为当前记录获取主键值的同时为持久化对象赋予标识符属性值。 sequence 生成策略:在 Oracle、DB2 和 PostgreSQL 等数据库中创建一个序列(sequence),然后Hibernate 通过该序列为当前记录获取主键值,进而为持久化对象赋予标识符属性值。 native 生成策略:由 Hibernate 根据所使用的数据库支持能力从 identity、sequence 或者等生成策 略中选择一种。
- 6.(单选题)执行下面代码返回的结果为( )。 Criteria criteria = session.createCriteria(User.class); criteria.addOrder(Order.desc("id")); List result = criteria.list();
- A)以id降序排列的User对象列表
- B)以id升序排列的User对象列表
- C)返回Order为id的User对象的列表
- D)不返回对象
- 正确答案为:A
解析:desc是降序
- 7.(单选题)Hibernate对JDBC访问数据库的代码进行了封装,从而大大的简化了数据访问层的代码,它是针对三层架构中( )的解决方案。
- A)表现层
- B)业务逻辑层
- C)持久化层
- D)数据库系统
- 解析:在三层架构中Hibernate这个框架主要作用于持久层,strus2在表现层,业务层是spring
- 8.(单选题)下面关于hibernate核心接口说明错误的是?()
- A)Configuration 接口:配置Hibernate,根据其启动hibernate,创建SessionFactory 对象
- B)SessionFactory 接口:负责保存、更新、删除、加载和查询对象,是线程不安全的
- C)Query 和Criteria 接口:执行数据库的查询
- D)Transaction 接口:管理事务
- 解析:SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
- 9.(单选题)下面( )不属于关系—对象映射的映射信息。
- A)程序包名到数据库库名的映射
- B)程序类名到数据库表名的映射
- C)实体属性名到数据库表字段的映射
- D)实体属性类型到数据库表字段类型的映射
- 正确答案为:A
解析:映射中并没有“程序包名到数据库库名的映射”这种方式
- 10.(单选题)由持久化状态向游离状态转变的方法不包括( )。
- A)close()
- B)clear()
- C)lock()
- D)evict()
- 正确答案为:C
解析:lock()是从游离状态变为持久状态
- 11.(单选题)如果数据库是oracle,则generator属性值不可以使用()。
- A)native
- B)identity
- C)hilo
- D)sequence
- 解析:identity:生成long, short或者int类型的主键。适用于MySQL, MS SQL Server, Sybase and HypersonicSQL
- 12.(单选题)下面代码的执行效果是( )。 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)返回分数最高的五个学生
- B)返回分数最高的六个学生
- C)返回分数最低的五个学生
- D)返回分数最低的六个学生
- 正确答案为:C
解析:asc是从小打大,然后传入了2个参数从最低开始取5个
- 13.(单选题)以下不属于Cascade的属性取值的有( )。
- A)all
- B)save
- C)delete
- D)save-update
- 解析:Cascade的属性取值的有all,none,save-update,delete,all-delete-orphan
- 14.(单选题)下面HQL语句的含义是( )。 select stu from TblStudent stu where stu.score > ( select avg(score) from TblStudent )
- A)查询所有学生的平均分
- B)查询得分大于平均分的学生的成绩
- C)查询得分最高的学生
- D)查询得分大于平均分的学生
- 正确答案为:D
解析:avg是求平均数,stu.score > ( select avg(score) from TblStudent )就是求大于平均分的学生
- 15.(单选题)从性能考虑,inverse属性值通常设置为( )。
- A)all
- B)false
- C)true
- D)None
- 正确答案为:B
解析:"inverse"属性只有两个值"true"和"false"。"true"表示将关系维护的权力交给对方,"false"表示不交出维护权力(默认值)。 属性为false的情况下性能较快
- 16.(单选题)级联删除时,cascade属性是( )。
- A)all
- B)save
- C)delete
- D)save-update
- 解析:delete:在执行删除时进行关联操作。
- 17.(单选题)关于HQL与SQL,以下哪些说法正确?()。
- A)HQL与SQL没什么差别
- B)HQL面向对象,而SQL操纵关系数据库
- C)在HQL与SQL中,都包含select,insert,update,delete语句
- D)HQL仅用于查询和删除数据,不支持insert,update语句
- 正确答案为:B
解析:详解见两者概念
- 18.(多选题)下列属于多对一关系的是( )。
- A)书和作者
- B)手机和生产厂家
- C)用户和发布的出租信息
- D)士兵和班长
- 正确答案为:BD
解析:AC是一对多
- 19.(多选题)下面关于Hibernate关联映射说法错误的是()。
- A)配置单项多对一关联映射,在配置文件中需要使用<many-to-one>标签
- B)面向对象领域的关联关系可以分为单向一对多或者单向多对一
- C)人和手机号码之间的关系是一对多关系
- D)cascade属性描述了级联操作的规则
- 解析:B选项:面向对象领域的关联关系不是只有单向一对多或者单向多对一还有双向一对多双向多对一,自身双向关联等等, C选项:人和手机号码之间也可以是多对一,或多对多
- 20.(多选题)对下面代码中存在的错误,说法正确的是()。 String hql = "from TblUser u where u.status = @status ";//<1> Query query = session.createQuery();//<2> query.setNamedParameter(":status","");//<3> return query.executeQuery(hql);//<4>
- A)第一行中的命名参数“@status”应该是“:status”
- B)第二行createQuery 函数应该传入hql 作为参数
- C)第三行命名参数名称“:status”应该是“status”
- D)第四行应该是“return query.list(hql);”
- 正确答案为:ABC
解析:第四行是没有错误的,返回值是对的
tmobst2an的更多相关文章
随机推荐
- GPL协议中国第一案尘埃落定,相关开源软件应如何风控?
导读:2019年11月6日,数字天堂(北京)网络技术有限公司(以下简称 “数字天堂公司”)诉柚子(北京)科技有限公司.柚子(北京)移动技术有限公司(以下简称 “柚子公司”)侵犯计算机软件著作权纠纷一案 ...
- springboot-实现文件下载
一 前言 本文实现的文件下载是使用Apache 的 commons-fileupload 实现:在之前的springboot系列文件中已经讲述过如何实现多文件上传:这篇文件实现的文件下载功能主要是能在 ...
- 细说javascript typeof操作符
细说javascript typeof操作符 typeof定义 typeof是一元运算符,用来返回操作数类型的字符串.下面是ECAMScript5.1关于typeof的标准定义: NOTE:上面表格标 ...
- C# 启动 a Python Web Server with Flask
概览 最近有个需求是通过c#代码来启动python 脚本.嘿~嘿!!! 突发奇想~~既然可以启动python脚本,那也能启动flask,于是开始着手操作. 先看一波gif图 通过打开控制台启动flas ...
- 比特币学习笔记(二)---在windows下调试比特币源码
根据我一贯的学习经验,学习开源代码的话,单单看是不够的,必须一边看一边调试才能尽快理解,所以我们要想法搭建windows下bitcoin源码的调试环境. 紧接着昨天的进度,想要调试linux下的比特币 ...
- 变量的取用与设定:echo,变量设定规则,unset
1.变量的取用echo echo $variable echo ${variable} 2.变量的设定规则 3.让我设定的name=VBird应用在下个应用程序 4.进入到核心的模块目录 5.取消设定 ...
- Python - 线性回归(Linear Regression) 的 Python 实现
背景 学习 Linear Regression in Python – Real Python,前面几篇文章分别讲了"regression怎么理解","线性回归怎么理解& ...
- 让vue-router渲染为指定的标签
<router-link :to="{name:'cart'}" tag="li"> cart </router-link> 在rout ...
- python检查是否是闰年
检查的依据: 闰年可以被4整除不能被100整除,或者可以被400整除. year = int(input("请输入年份:")) if year % 4 == 0 and year ...
- c++快读与快输模板
快读 inline int read() { ; ; char ch=getchar(); ; ch=getchar();} )+(X<<)+ch-'; ch=getchar();} if ...