还剩6页未读,继续阅读
文本内容:
hibernate试题及答案
一、单项选择题(共30题,每题1分)Hibernate是一种什么类型的框架?()A.Web开发框架B.ORM框架C.数据库工具D.安全框架以下哪个是Hibernate的核心接口?()A.Connection B.SessionFactory C.Statement D.ResultSetHibernate配置文件hibernate.cfg.xml默认存放的位置是?()A.src目录B.src/main/java目录C.src/main/resources目录D.项目根目录在Hibernate中,Session的openSession方法创建的Session是?()A.线程安全的B.需要手动关闭C.自动绑定事务D.无状态的以下哪种不是Hibernate的查询方式?()A.HQL查询B.原生SQL查询C.QBC查询D.JDBC查询实体类必须满足的条件是?()A.必须有带参构造方法B.必须实现Serializable接口C.必须有public无参构造方法D.必须有getter/setter方法Hibernate中,用于管理事务的接口是?()A.Transaction B.Connection C.Session D.Query以下关于Hibernate一级缓存的说法,正确的是?()A.一级缓存是应用级缓存B.关闭Session后一级缓存失效C.一级缓存默认不启用D.一级缓存可通过clear方法清空Hibernate的映射文件中,用于指定主键生成策略的标签是?()A.B.C.D.在HQL查询中,以下哪个语句正确?()第1页共8页A.from Userwhere id=:uid B.select*from UserC.User.get1D.session.loadUser.class,1以下哪种关联关系需要在多端配置外键?()A.一对一(双向)B.一对多C.多对多D.一对一(单向)Hibernate中,用于延迟加载实体对象的方法是?()A.load B.get C.find D.query.list实体类中,以下哪个属性会被Hibernate自动管理为OID?()A.自定义ID属性B.无参构造方法C.带参构造方法D.引用类型属性以下关于Hibernate二级缓存的说法,错误的是?()A.二级缓存是进程级缓存B.需要手动配置启用C.所有实体类默认启用二级缓存D.可缓存查询结果在Hibernate中,级联操作cascade=save-update的作用是?()A.级联删除B.级联保存和更新C.级联查询D.级联加载Hibernate的事务默认隔离级别是?()A.READ_UNCOMMITTED B.READ_COMMITTED C.REPEATABLE_READ D.SERIALIZABLE实体类中,以下哪个注解用于指定表名?()A.@Column B.@Table C.@Id D.@GeneratedValue以下哪个方法用于刷新Session与数据库的同步?()A.session.refresh B.session.update C.session.flushD.session.clearHibernate中,以下哪种映射方式更简洁,减少XML文件?()A.XML映射B.注解映射C.混合映射D.配置映射在HQL中,like查询的通配符是?()第2页共8页A.%B.*C._D.以下关于Hibernate的说法,正确的是?()A.支持跨数据库移植B.必须编写SQL语句C.只能管理单表D.事务自动提交实体类中,用于设置属性为自增主键的注解是?()A.@GeneratedValuestrategy=GenerationType.IDENTITYB.@GeneratedValuestrategy=GenerationType.SEQUENCEC.@GeneratedValuestrategy=GenerationType.TABLED.@GeneratedValuestrategy=GenerationType.AUTOHibernate中,SessionFactory的创建方式是?()A.new SessionFactoryB.Configuration.buildSessionFactoryC.Session.openSessionFactory D.Transaction.beginSessionFactory以下哪个是Hibernate的核心配置类?()A.Session B.Transaction C.Configuration D.Query在Hibernate中,当实体类属性类型为Date时,应使用哪个标签配置?()A.B.C.D.type=date以下关于Hibernate的说法,错误的是?()A.是一种ORM框架,简化数据库操作B.提供了面向对象的数据库访问方式C.必须继承特定父类D.支持缓存机制Hibernate中,多对多关联关系需要通过哪个标签配置中间表?()A.B.C.D.第3页共8页在HQL中,以下哪个语句用于分页查询?()A.limit10B.offset10C.setMaxResults10D.setFirstResult10Hibernate中,实体类的属性默认是?()A.持久化的B.瞬时的C.游离的D.临时的以下哪个是Hibernate的核心优势?()A.无需编写SQL语句B.直接操作数据库表结构C.提供了丰富的数据库连接池D.简化了JDBC的重复代码
二、多项选择题(共20题,每题2分)Hibernate的主要组成部分包括以下哪些?()A.Configuration B.SessionFactory C.Session D.Transaction以下属于Hibernate实体状态的有?()A.瞬时态B.持久态C.游离态D.托管态Hibernate的映射文件中,以下哪些标签用于配置属性?()A.B.C.D.以下关于HQL查询的说法,正确的有?()A.支持参数绑定B.区分大小写C.可以查询关联实体D.必须指定表名Hibernate的级联操作包括以下哪些?()A.save-update B.delete C.all D.merge以下哪些是Hibernate支持的主键生成策略?()A.identity B.sequence C.table D.autoHibernate的二级缓存可以缓存哪些数据?()A.实体对象B.集合对象C.查询结果D.事务对象第4页共8页以下关于Session的说法,正确的有?()A.是Hibernate操作数据库的核心接口B.线程不安全C.可以直接操作数据库D.是轻量级对象Hibernate的事务管理特点包括?()A.声明式事务B.编程式事务C.自动提交D.手动提交以下哪些是Hibernate的查询方式?()A.HQL查询B.原生SQL查询C.QBC查询D.Criteria查询实体类与表的映射关系中,以下哪些是正确的?()A.一个实体类对应一个表B.一个表可以对应多个实体类C.实体类的属性对应表的列D.实体类名必须与表名一致Hibernate的缓存机制包括以下哪些?()A.一级缓存B.二级缓存C.查询缓存D.本地缓存以下关于Hibernate注解的说法,正确的有?()A.@Entity用于标记实体类B.@Table用于指定表名C.@Id用于指定主键D.@GeneratedValue用于指定主键生成策略Hibernate中,用于设置关联关系的注解有?()A.@OneToMany B.@ManyToOne C.@OneToOne D.@ManyToMany以下关于Hibernate的说法,正确的有?()A.是一种ORM框架,实现了Java对象与数据库表的映射B.降低了数据库操作的复杂度C.支持延迟加载D.提供了事务管理Hibernate的配置方式包括?()A.hibernate.cfg.xml配置文件B.注解配置C.代码配置D.环境变量配置以下哪些情况会导致Session关闭?()第5页共8页A.调用session.close B.事务提交或回滚C.应用程序退出D.会话超时HQL查询中,以下哪些关键字可以用于条件查询?()A.where B.and C.or D.in以下关于Hibernate的说法,错误的有?()A.必须通过SessionFactory创建Session B.实体类必须有无参构造方法C.所有属性必须是public类型D.事务默认是自动提交的Hibernate的优势包括以下哪些?()A.提高开发效率B.降低数据库耦合C.支持复杂查询D.跨数据库移植
三、判断题(共20题,每题1分,对的打√,错的打×)Hibernate是一种JDBC的替代技术()Session是线程安全的对象()Hibernate的一级缓存默认是启用的()HQL查询中,select后必须指定具体的列名()实体类的OID可以为null()Hibernate的事务默认隔离级别是REPEATABLE_READ()多对多关联关系需要配置中间表()使用@ManyToOne注解时,默认是立即加载()Hibernate的SessionFactory可以被多个线程共享()HQL查询支持SQL函数()实体类的属性类型必须是基本类型()Hibernate的二级缓存需要额外配置第三方缓存(如EHCache)()第6页共8页Session的getCurrentSession方法创建的Session会自动绑定事务()Hibernate的级联操作cascade=delete会级联删除关联对象()HQL查询中的参数可以通过位置或命名参数绑定()实体类与数据库表的映射是单向的,无法双向关联()Hibernate的update方法可以更新游离态的实体对象()Hibernate支持原生SQL查询()实体类的无参构造方法是必须的()Hibernate的查询缓存默认是启用的()
四、简答题(共2题,每题5分)简述Hibernate的一级缓存和二级缓存的区别说明HQL查询与原生SQL查询的主要区别参考答案
一、单项选择题1-5:B B C BD6-10:C AD B A11-15:BAA C B16-20:B BC AA21-25:D ABCD26-30:CBC AD
二、多项选择题1:ABCD2:ABC3:ABCD4:AC5:ABCD6:ABCD7:ABC8:ABD9:AB10:ABD11:AC12:ABC13:ABCD14:ABCD15:ABCD16:AB17:ABD18:ABCD19:CD20:ABD第7页共8页
三、判断题1:×2:×3:√4:×5:×6:√7:√8:√9:√10:√11:×12:√13:√14:√15:√16:×17:√18:√19:√20:×
四、简答题一级缓存是Session级别的缓存,默认启用,生命周期与Session一致,存储当前会话中操作的实体对象,减少数据库访问;二级缓存是应用级缓存,需手动配置(如使用EHCache),生命周期与应用一致,可被多个Session共享,缓存范围更广(实体、集合、查询结果)HQL查询是面向对象的查询语言,使用实体类和属性名,与SQL语法不同,支持参数绑定和关联查询,数据库无关;原生SQL查询直接使用SQL语句,与数据库相关,可执行复杂SQL操作,但需手动处理对象映射,适合特殊SQL场景第8页共8页。
个人认证
优秀文档
获得点赞 0