tmobst2an

      • (单选题)与下面代码效果相同的HQL 语句是( )。 Criteria criteria = session.createCriteria(User.class); criteria.add(Restrictions.like("name","admin%")); List result = criteria.list();

      • 正确答案为:A
        解析:仔细看题干Restrictions.like("name","admin%")是查询name中的admin%
      • 2.(单选题)Hibernate增加数据时可以调用Session的( )方法。

      • 解析:增加数据用save()方法,update()是更新,delete()是删除,get()是取数据
      • 3.(单选题)setMaxResult(3)方法中,参数值3是指( )。

      • 解析:setMaxResult方法是查询多少条语句,参数3就代表查询3条
      • 4.(单选题)由持久化状态向游离状态转变的方法不包括( )。

      • 正确答案为:C
        解析:仔细看题干
      • 5.(单选题)以下哪个 Hibernate 主键生成策略是实现主键按数值顺序递增的( )

      • 解析: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
        解析:desc是降序
      • 7.(单选题)Hibernate对JDBC访问数据库的代码进行了封装,从而大大的简化了数据访问层的代码,它是针对三层架构中( )的解决方案。

      • 解析:在三层架构中Hibernate这个框架主要作用于持久层,strus2在表现层,业务层是spring
      • 8.(单选题)下面关于hibernate核心接口说明错误的是?()

      • 解析:SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
      • 9.(单选题)下面( )不属于关系—对象映射的映射信息。

      • 正确答案为:A
        解析:映射中并没有“程序包名到数据库库名的映射”这种方式
      • 10.(单选题)由持久化状态向游离状态转变的方法不包括( )。

      • 正确答案为:C
        解析:lock()是从游离状态变为持久状态
      • 11.(单选题)如果数据库是oracle,则generator属性值不可以使用()。

      • 解析: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();

      • 正确答案为:C
        解析:asc是从小打大,然后传入了2个参数从最低开始取5个
      • 13.(单选题)以下不属于Cascade的属性取值的有( )。

      • 解析:Cascade的属性取值的有all,none,save-update,delete,all-delete-orphan
      • 14.(单选题)下面HQL语句的含义是( )。 select stu from TblStudent stu where stu.score > ( select avg(score) from TblStudent )

      • 正确答案为:D
        解析:avg是求平均数,stu.score > ( select avg(score) from TblStudent )就是求大于平均分的学生
      • 15.(单选题)从性能考虑,inverse属性值通常设置为( )。

      • 正确答案为:B
        解析:"inverse"属性只有两个值"true"和"false"。"true"表示将关系维护的权力交给对方,"false"表示不交出维护权力(默认值)。 属性为false的情况下性能较快
      • 16.(单选题)级联删除时,cascade属性是( )。

      • 解析:delete:在执行删除时进行关联操作。
      • 17.(单选题)关于HQL与SQL,以下哪些说法正确?()。

      • 正确答案为:B
        解析:详解见两者概念
      • 18.(多选题)下列属于多对一关系的是( )。

      • 正确答案为:BD
        解析:AC是一对多
      • 19.(多选题)下面关于Hibernate关联映射说法错误的是()。

      • 解析: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>

      • 正确答案为:ABC
        解析:第四行是没有错误的,返回值是对的
posted @ 2017-10-25 19:47  东华上仙  阅读(305)  评论(0编辑  收藏  举报