Hibernate最新练习题
hibernate练习题
1.下面创建Criteria对象的语句中正确的是单选A、Criteria c = query.createCriteria();B、Criteria c = query.addCriteria();C、Criteria c = session.createCriteria();D、Criteria c = session.createCriteria(User.class);2. Query对象执行查询结论正确的是多选A、list()方法返回结果为List对象,数据总量为0到多条B、uniqueResut()方法返回结果为对象或对象数组,数据总量为0到1条数据C、HQL:select userName from UserModel可以使用list()方法进行查询结果的获取D、HQL:select userName from UserModel可以使用uniqueResut()方法进行查询结果的获取3Hibernate实体对象制作规范不包含下列哪条规则单选A、声明无参公共的构造方法B、提供用于作为OID的标识属性C、为所有属性提供getter与setter方法D、声明为最终类(final修饰)4在HQL语句的参数查询中,执行以下代码,下列选项能够为参数正确赋值的操作是Query query = s.createQuery("from Customer o where =?");单选A、query.setParameter(1, "Tom");B、query.setParameter(0, "Tom");C、query.setString(0,Tom);D、query.setInteger (0,Tom);5有关Hibernate瞬时对象状态说法错误的是多选A、瞬时状态的对象具有OID,与Session对象关联B、瞬时状态的对象具有OID,不与Session对象关联C、瞬时状态的对象不具有OID,与Session对象关联D、瞬时状态的对象不具有OID,不与Session对象关联6有关QBC查询短语,下列说法正确的多选A、Restrictions.between表示范围比对B、Restrictions.eq表示等比对C、Restrictions.le表示小于等于比对D、Restrictions.ge表示大于等于比对7下列操作对一级缓存的影响描述错误的是单选A、执行delete操作时,如果对象不具有OID,将抛出异常B、执行update操作时,如果对象不具有OID,将抛出异常C、执行update操作时,如果一级缓存中已经存在有相同OID数据,将抛出异常D、执行merge操作时,如果一级缓存中已经存在有相同OID数据,将抛出异常8下列哪项不是用于配置数据库连接的配置单选A、hibernate.connection.urlB、ernameC、hibernate.show_sqlD、hibernate.connection.password9以下有关Query对象获取查询结果说法不正确的是单选A、list()方法返回结果为List集合B、list()方法返回结果数据总量为1到多条数据C、uniqueResut()方法返回结果内容为对象或对象数组D、uniqueResut()方法返回结果数据总量为0到1条数据10下列关于Hibernate缓存设置描述正确的是多选A、二级缓存默认开启,无需手工设置B、一级缓存是Session级别的缓存,不同Session对象间数据不共享C、二级缓存是SessionFactory级别的缓存,同一个SessionFactory开启的不同Session间数据共享D、二级缓存的数据首先加载到一级缓存中,然后一级缓存将数据返回给应用程序11下列哪个接口用于执行原生SQL单选A、SQLQueryB、SessionC、ListD、Query12Hibernate常用API初始化错误的是多选A、Configuration conf = Configuration.getConfiguration();B、SessionFactory sf = conf.getSessionFactory();C、Session s = sf.getSession();D、Transaction t = s.getTransaction();13下列哪些规则不能作为Hibernate持久化类定义的规范多选A、声明可访问的无参构造方法B、为所有属性提供getter与setter方法C、声明为最终类(final修饰)D、为实体模型类实现序列化接口14进行Hibernate属性配置时,不能使用下列哪种配置格式多选A、<property name="name">B、<property column="age">C、<property "address"=name "addr"=column>D、<property name="usreName" column="userName"></property>15下列OID生成策略错误的是多选A、autoB、identityC、uuidD、random16下列不属于外连接查询HQL语句的是单选A、HQL:from TeacherModel tm inner join fetch tm.studentsB、HQL:from TeacherModel tm left outer join tm.studentsC、HQL:from TeacherModel tm left outer join fetch tm.studentsD、HQL:from TeacherModel tm right outer join tm.students17以下有关Hibernate映射说法不正确的是多选A、类中的属性必须与表中的字段一一对应,全部映射B、表中的字段必须与类中的属性一一对应,全部映射C、一个类可以映射多个表,一个表可以映射多个类D、关联关系必须配置成双向的,不能只配置一边18下列关于关联关系对象模型描述错误的是单选A、一对多关系中,一方模型中添加多方模型的集合B、一对多关系中,多方模型中添加一方模型的对象C、多对多关系中,双方模型中添加对应模型的对象D、多对多关系中,双方模型中添加对应模型的集合19关于二级缓存数据加载描述正确的是多选A、load与get查询的数据进入二级缓存B、HQL查询的数据进入二级缓存C、QBC查询的数据进入二级缓存D、使用SQLQuery执行的查询数据进入二级缓存20下列哪些技术可以用于完成数据库的添加操作多选A、JDBCB、Apache DBUtilsC、struts2D、Hibernate21下列Hibernate映射配置文件命名不正确的是单选A、user.propertiesB、user.hbm.xmlC、User.hbm.xmlD、UserModel.hbm.xml22完成按照用户年龄进行查询,下列程序片段如下String hql = "from UserModel where age = ?";Query q = s.createQuery(hql);q.________(0,18);空白处可以填写的内容为多选A、setIntegerB、getIntegerC、setParameterD、getParameter23下列关于Session对象查询单一数据描述正确的是A、load方法是延迟加载,如果设置模型lazy=false或实体类设置为final修饰将无法产生代理对象B、get方法是立即加载,如果查询的数据不存在返回nullC、load方法查询的数据不存在将抛出异常D、load与get方法都可以用于查询0到多条数据24能够完成查询操作的正确HQL语句格式有哪些多选A、from UserModel where um.uuid = :uuidB、from UserModel where uuid = ?C、from UserModel um where m.uuid = ?D、from UserModel um25以下HQL语句书写语法格式错误的是单选A、select erName from UserModelB、select userName from UserModel umC、select userName from UserModel as umD、from UserModel um26持久化类的编写规则有哪些?多选A、提供一个无参数public访问控制符的构造器B、提供一个标识属性,映射数据表主键字段C、所有属性提供public访问控制符的set get 方法D、属性应尽量使用基本数据类型的包装类型27完成按用户名进行查询,程序片段如下String hql = "from UserModel where userName = ?";Query q = s.createQuery();q.________(0,”value”);空白处应该填写的内容为单选A、setB、getC、setParameterD、getParameter28下列操作哪些能完成对实体类UserModel的全数据查询Configuration conf = new Configuration().configure(); SessionFactory sf = conf.buildSessionFactory();Session s = sf.getSession();多选A、s.createQuery(from UserModel);B、s.createQuery("from UserModel");C、s.createCriteria("UserModel");D、s.createCriteria(UserModel.class);29实现Hiberante延迟加载策略产生代理对象由下列哪个包完成?单选A、javassist.jarB、ehcache.jarC、hibernate3.jarD、jta.jar30QBC查询可以用于完成等于关系的短语是单选A、Restrictions.equalsB、Restrictions.eqC、Restrictions.leD、Restrictions.ge31Hibernate的对象状态不包含下列哪一种单选A、瞬时状态B、持久化状态C、约束状态D、托管状态32已知系统中的tbl_user表对应的实体类是User,下列HQL语句中正确的是多选A、from UserB、select * from tbl_userC、select User from UserD、from User u where u.uname=”15”33下列名称可以用于作为Hibernate映射配置名的是多选A、User.cfg.xmlB、User.xmlC、UserModel.hbm.xmlD、user.properties34Hibernate级联保存集合中的对象,casecade属性应该取什么值单选A、noneB、saveC、deleteD、save-update35完成查询用户表中的信息总量,程序片段如下String hql = "select count(uuid) from UserModel";Query q = s.createQuery(hql);________ count = s.uniqueResult();空白处应该填写的内容为单选A、IntegerB、LongC、FloatD、Double36. OID生成策略不包含下列哪种单选A、assignedB、autoC、nativeD、identity37hibernate的二级缓存关于类级别的缓存说法正确的是多选A、缓存中存放的是对象的实体B、缓存中存放的是对象实体的散装数据,查询时会重新组织新的实体对象C、集合缓存要依赖于类级别的缓存,因为这里存放的是OIDD、查询缓存依赖于类级别的缓存38已知要查询数据的OID,完成查询OID为指定值的数据可以通过如下哪些方法实现多选A、load()B、loadAll()C、get()D、init()39Hibernate快照描述错误的是单选A、快照是一级缓存中的特殊区域B、快照是二级缓存中的特殊区域C、快照是自动产生的,不可以手工修改D、快照的作用是用于比对一级缓存中的数据是否进行增删改操作40以下方法不是Session接口用于进行增删改操作的是单选A、save(Object obj)B、update(Object obj)C、delete(Object obj)D、load(Class clazz, Serializable uuid)。
软件开发框架(J2EE)Hibernate概述习题与答案
一、多选题1.在Hibernate 主配置文件(hibernate.cfg.xml)中,以下哪个元素()为它的根元素。
A.<hibernate-configuration>元素B.<session-factory>元素C.<property>元素D.<mapping>元素E.<hibernate-mapping>元素2.在Hibernate 主配置文件(hibernate.cfg.xml)中,是通过哪个元素()来配置映射文件的。
A.<hibernate-configuration>元素B.<session-factory>元素C.<property>元素D.<mapping>元素E.<hibernate-mapping>元素3.下面关于Hibernate 的映射文件说法正确的有哪些()。
A.Hibernate 是以xml 格式的文件来指定对象与关系数据之间的映射B.在hibernate.cfg.xml文件中可以配置<mapping>元素的resource属性来指定映射文件C.配置映射文件时,需要遵循它对应的DTD 文件格式D.在映射文件中,<class>元素的<id>子元素只能出现一次E.<id>元素的<generator>子元素用来设定标识符生成器4.在Hibernate 的映射文件中,<id>元素的<generator>子元素用来设定标识符生成器,以下对常用的标识符生成器的用法说法正确的是()。
A.increment:适用于代理主键。
用于为long, short 或者int 类型生成唯一标识B.identity:适用于代理主键。
由底层数据库生成标识符C.sequence:适用于代理主键。
Hibernate 根据底层数据库的序列来生成标识符D.hilo:使用一个高/低位算法高效的生成long、short 或者int 类型的标识符E.seqhilo:使用一个高/低位算法来高效的生成long、short 或者int 类型的标识符,给定一个数据库序列(sequence)的名字5.Hibernate 采用xml 文件来配置对象—关系映射有哪些好处()。
hibernate练习题
hibernate练习题1年。
以下语句中创建条件对象的正确语句是radioA,条件c = query . CreateCriteria();标准c =查询。
添加标准();C、条件c =会话.创建条件();D、条件c =会话创建条件(用户类);2的正确结论。
查询对象是选择大于A的对象,List()方法返回总数据为0到大于B的列表对象,uniqueResut()方法返回对象或对象数组。
数据总量为0到1条数据C,hql:selectusername from user model可以使用list()方法获取查询结果D,hql:selectusername from user model可以使用uniqueResut()方法获取查询结果3Hibernate实体对象生产规范不包括以下规则中的哪一个来选择A,构造方法B声明没有公共参数,标识属性256 所有属性的getter和setter方法D,声明为最终类(最终修饰符)4在HQL语句的参数查询中,执行以下代码。
下列选项可以正确地为参数赋值:QUERY = S . CREATE QUERY(\ radioA,query.setParameter(1,B,query.setParameter(0,C,query.setString(0,Tom);整数(0,汤姆);5关于Hibernate的瞬时对象状态是错误的。
它是为具有OID的瞬时状态的更多对象选择A,B与会话对象相关联,具有瞬时状态的对象具有OID,C不与会话对象相关联,并且具有瞬时状态的对象不具有OID。
与会话对象相关联的瞬时状态对象没有OID,6相关的QBC查询短语与会话对象不相关联,以下语句是正确的:多选A,限制。
介于表示范围比较b,限制。
eq表示相等比较C,限制。
le表示小于或等于比较d,限制。
ge表示大于或等于比较7年,以下操作对一级缓存的影响被错误地描述为| 1执行删除操作时,如果对象没有OID,将引发异常b。
Hibernate复习题1含答案要点
美斯坦福在线考试系统荆州理工G3 Hibernate科目: SCCEG3Hibernate总分: 100分时间: 60分钟一、单选题(共45题,每题2分,说明:选择一项正确的答案)1、下面关于Hibernate的说法,错误的是()A、Hibernate是一个“对象-关系映射”的实现B、Hibernate是一种数据持久化技术C、Hibernate是JDBC的替代技术他是对JDBC做了轻量级的对象封装D、使用Hibernate可以简化持久化层的编码参考答案: C2、在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是()A、配置客户和订单关联的cascade属性为save-updateB、配置客户和订单关联的cascade属性为allC、设置多对一关联的inverse属性为trueD、设置多对一关联的inverse属性为false参考答案: B详解3、下面一对多关联的配置中,存在哪些错误()<set name="orders" inverse="false" cascade="true"><one-to-many class="com.x.entity.Order"column="customer_id" /></set>A、inverse属性不可以设置为falseB、cascade属性不可设置为trueC、class="com.x.entity.Order"应为type="com.x.entity.Order"D、column属性不可再<one-to-many>节点内设置参考答案: B4、下面创建Criteria对象的语句中正确的是()A、Criteria c = query.createCriteria();B、Criteria c = query.addCriteria();C、Criteria c = session.createCriteria();D、Criteria c = session.createCriteria(User.class);参考答案: D5、下面关于Hibernate映射文件配置中dynamic-update属性说法正确的是()详解A、动态的修改,如果为true,只改变有改变的属性B、动态的修改,如果为true,只改变没有改变过的属性C、动态的修改,如果为true,改变所有的属性D、以上说法都错参考答案: A6、下面关系Hibernate对象的状态说话正确的是()临时持久化游离A、Hibernat的对象只有一种状态B、Hibernat的对象有2种状态C、Hibernat的对象有3种状态D、Hibernat的对象有4种状态参考答案: C7、Hibernate对象从瞬时到持久状态转换的方式有()。
hibernate考试题及答案
hibernate考试题及答案一、单选题(每题2分,共10分)1. Hibernate中的对象状态有以下几种?A. 瞬时态B. 持久态C. 游离态D. 以上都是答案:D2. Hibernate中哪个接口负责事务管理?A. SessionB. TransactionC. SessionFactoryD. Configuration答案:B3. 在Hibernate中,以下哪个注解用于指定类与表的映射关系?A. @EntityB. @TableC. @ColumnD. @Id答案:A4. Hibernate中的延迟加载技术是通过以下哪个接口实现的?A. SessionB. CriteriaC. QueryD. StatelessSession答案:D5. Hibernate中,以下哪个是正确的主键生成策略?A. IDENTITYB. SEQUENCEC. AUTOD. 以上都是答案:D二、多选题(每题3分,共15分)1. Hibernate中支持的关联关系有哪些?A. 一对一B. 多对一C. 多对多D. 一对多答案:A, B, C, D2. 在Hibernate中,哪些是有效的缓存策略?A. 一级缓存B. 二级缓存C. 查询缓存D. 会话缓存答案:A, B, C3. Hibernate中,哪些是有效的查询方式?A. HQL查询B. SQL查询C. Criteria查询D. Query查询答案:A, B, C, D4. Hibernate中,以下哪些是有效的集合映射类型?A. SetB. ListC. BagD. Map答案:A, B, C, D5. 在Hibernate中,以下哪些是有效的事务管理策略?A. 声明式事务B. 编程式事务C. 自动提交事务D. 手动提交事务答案:A, B三、判断题(每题1分,共5分)1. Hibernate是一个半自动ORM框架。
(错误)2. Hibernate支持多数据库方言。
题库
考试题库1、在Hibernate中,下列说法正确的有()。
【选三项】A.Hibernate是一个开放源代码的对象关系映射框架B.Hibernate对JDBC进行了轻量级的对象封装C.Hibernate可以大大减少操作数据库的工作量D.Hibernate提供了数据查询机制,但没有提供恢复机制2、关于Hibernate,下列说法错误的是()。
A.Hibernate是一个对象-关系映射工具B.在MVC模式中,Hibernate属于控制层C.Hibernate在JDBC的方式上进行封装,以简化JDBC方式繁琐的编码工作D.在Hibernate中,可以通过xml格式的配置文件保存对象-关系的映射信息3、在Hibernate中,下列关于SessionFactory说法正确的有()。
【选两项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.一个SessionFactory实例对应一个数据存储源4、在Hibernate中,下列关于Session说法正确的有()。
【选三项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.Session也被称为持久化管理器,它提供了和持久化相关的操作5、在Hibernate中,下列关于Transaction说法正确的有()。
【选三项】A.事务Transaction为应用程序指定以原子操作单元为范围的对象B.在对数据库进行增加、修改和删除操作时一定要加上TransactionC.在对数据库进行查询操作时一定要加上TransactionD.获得Transaction的方法:Transaction tr = session.beginTransaction();6、在Hibernate中,如果数据库是MySql或者SQLServer,则generator属性值不可以使用()。
A.hiloB.nativeC.sequenceD.indentity7、在Hibernate中,如果数据库是Oracle或者DB2,则generator属性值不可以使用()。
hibernate考试题及答案
hibernate考试题及答案一、单选题(每题2分,共10分)1. Hibernate中,哪个接口负责对象的持久化操作?A. SessionFactoryB. SessionC. TransactionD. Configuration答案:B2. 在Hibernate中,以下哪个是正确的实体类注解?A. @EntityB. @TableC. @ColumnD. @Id答案:A3. Hibernate中,哪个方法用于获取当前Session?A. getCurrentSession()B. openSession()C. closeSession()D. flush()答案:A4. 在Hibernate中,以下哪个是正确的级联策略?A. CascadeType.ALLB. CascadeType.NONEC. CascadeType.PERSISTD. CascadeType.MERGE答案:A5. Hibernate中,哪个类负责管理数据库方言?A. DialectB. SessionFactoryC. SessionD. Transaction答案:A二、多选题(每题3分,共15分)1. Hibernate中,以下哪些是事务管理的方法?A. beginTransaction()B. commit()C. rollback()D. setRollbackOnly()答案:ABCD2. 在Hibernate中,以下哪些是有效的查询方式?A. HQL(Hibernate Query Language)B. SQLC. Criteria APID. JPQL(Java Persistence Query Language)答案:ACD3. Hibernate中,以下哪些是正确的缓存策略?A. read-onlyB. nonstrict-read-writeC. read-writeD. transactional答案:ABCD4. 在Hibernate中,以下哪些是正确的关联关系?A. OneToOneB. ManyToOneC. OneToManyD. ManyToMany答案:ABCD5. Hibernate中,以下哪些是正确的实体状态?A. transientB. persistentC. detachedD. deleted答案:ABCD三、判断题(每题1分,共5分)1. Hibernate是一个半自动ORM框架。
Hibernate单选题
单选题1.下面不属于持久化的是(a)A.把对象转换为字符串的形式通过网络传输,在另一端接收到这个字符串后能把对象还原出来B.把程序数据从数据库中读出来C.从XML配置文件中读取程序的配置信息D.把程序数据保存为文件23.下面(a )不属于关系—对象映射的映射信息。
A.程序包名到数据库库名的映射B.程序类名到数据库表名的映射C.实体属性名到数据库表字段的映射D.实体属性类型到数据库表字段类型的映射4.使用Hibernate技术实现数据库持久化时,(d)内容不在Hibernate配置文件中。
A. 数据库连接信息B. 数据库类型C. show_sql参数D. 数据库表和实体的映射信息5.数据库表account对应实体类为Account类,以下HQL语句错误的有( d)。
A. select * from AccountB. From AccountC. From Account as modelD. Select * from account6.级联删除时,cascade属性是( c )。
A. allB. saveC. deleteD. save-update7.以下不属于Cascade的属性取值的有( b )。
A. allB. saveC. deleteD. save-update8.关于HQL查询,下列说法中错误的是( A )。
A. HQL查询的select子句中必须区分大小写B. HQL支持统计函数C. HQL支持仅查询对象的某几个属性,并将查询结果保存在Object数组中D. HQL语句可以实现类似于PreparedStatement的效果9.由持久化状态向游离状态转变的方法不包括( C)。
A. 临时状态B. 无引用状态C. 持久化状态D. 游离状态10.关于HQL与SQL,以下哪些说法正确?(B)。
A. HQL与SQL没什么差别B. HQL面向对象,而SQL操纵关系数据库C. 在HQL与SQL中,都包含select,insert,update,delete语句D. HQL仅用于查询和删除数据,不支持insert,update语句11.下面关于Hibernate说法正确的是(BD)。
hibernate练习题
问答题:
1.hibernate的三种状态之间如何转换
2.如何在控制台看到hibernate生成并执行的sql
3.Hibernate工作原理及为什么要用?
4.Hibernate是如何延迟加载?
5.说下Hibernate的缓存机制?
6.Hibernate的查询方式有几种,分别简述。
7.谈谈Hibernate中inverse的作用
8.hibernate hbm2ddl.auto做属性以及表示的作用
9.hibernate 格式化sql语句的配置
10.常用的hibernate注解以及意义。
练习题:
搭建hibernate框架,使用注解的方式实现对单表的增删改查操作,以及两张表的联合查询。
表:student 字段
表:classroom
注:无需创建主外键之间的关系,只需hibernate配置两张表的关联关系
1.实现对学生表的增删改查,用4个方法。
2.实现两表的关联查询学生的cid关联classroom表的cid。
Hibernate 考试题
Hibernate 考试题一.填空题:1. 对象关系映射(ORM)的基本原则是:类型(class)映射(),属性(property)映射(),关联关系(association)映射(),类型的实例或对象(instance | object)映射()。
2. Hibernate应用通常由四个部分组成,它们是使用Hibernate API的程序和(、、)。
3. Hibernate应用缺省的XML格式的配置文件名是(), 放置在()下;该配置文件的根元素是(),根元素的子元素是();配置数据库方言的属性名是();配置数据库连接的四种属性名是(、、、);配置映射资源的元素是(),如果映射用XML文件表示,用属性()表示,如果映射用标注(annotation)表示,用属性()表示。
4. Hibernate XML映射文件的根元素是();此根元素下主要的子元素是();映射实体类中表示主键的属性的元素是();映射实体类中普通属性的元素是();映射一对一关联关系的元素是();映射多对一关联关系的元素是();表示多对多关系用集合元素,这些集合元素是();描述外键用元素(); 如果一个类型不是实体,但它是某个实体的组成部分,我们用元素()表示;在描述继承关系时,如果用一张表对应整个类层次结构子类型用元素()描述,如果每个子类型对应各自的表子类型用()描述,如果只有真正的可实例化的子类型才对应表则子类型可用元素()或元素()描述;代表双向关联关系时表示是否维护表中外键关系的属性名是();代表级联操作的属性名是();使用乐观锁时我们通常会在实体类型中增加一整型或日期型的属性,在影射文件中用元素(或)描述。
5. 在Hibernate XML影射文件中描述主键生成机制用元素(),其属性描述了主键的生成策略,至少写出三种策略名(、、)。
6. 在Hibernate XML影射文件中级连操作的属性值至少写出三个(、、)。
7. 在Hibernate XML影射文件中描述HQL语句所用元素为()。
hbase练习题
HBase练习题一、HBase基础知识1. HBase是什么?2. HBase的架构特点是什么?3. HBase的数据模型是怎样的?4. HBase的存储引擎是什么?5. HBase的读写流程是怎样的?6. HBase的优缺点有哪些?7. HBase与关系型数据库的区别是什么?8. HBase与NoSQL数据库的区别是什么?9. HBase的命名空间、表、行、列族、列、单元格分别是什么?10. HBase的版本号是什么?二、HBase安装与配置1. 如何在Linux系统中安装HBase?2. 如何配置HBase的环境变量?3. 如何配置HBase的XML配置文件?4. 如何配置HBase的regionserver和master?5. 如何配置HBase的Zookeeper?6. 如何启动和停止HBase服务?7. 如何查看HBase的日志文件?8. 如何查看HBase的版本信息?9. 如何查看HBase的集群状态?10. 如何查看HBase的表信息?三、HBase表操作1. 如何创建HBase表?2. 如何删除HBase表?3. 如何修改HBase表结构?4. 如何添加列族?5. 如何删除列族?6. 如何添加列?7. 如何删除列?8. 如何查询HBase表中的数据?9. 如何更新HBase表中的数据?10. 如何删除HBase表中的数据?四、HBase数据操作1. 如何插入数据到HBase表?2. 如何批量插入数据到HBase表?3. 如何查询HBase表中的数据?4. 如何更新HBase表中的数据?5. 如何删除HBase表中的数据?6. 如何使用get方法查询数据?7. 如何使用scan方法查询数据?8. 如何使用filter方法查询数据?9. 如何使用rowkey查询数据?10. 如何使用列族查询数据?五、HBase高级操作1. 如何使用HBase的RowFilter?3. 如何使用HBase的PageFilter?4. 如何使用HBase的SingleColumnValueFilter?5. 如何使用HBase的MultipleColumnPrefixFilter?6. 如何使用HBase的SingleColumnValueRowFilter?7. 如何使用HBase的FamilyNameFilter?8. 如何使用HBase的KeyValueFilter?9. 如何使用HBase的PrefixFilter?10. 如何使用HBase的RowPrefixFilter?六、HBase性能优化1. 如何优化HBase的读写性能?2. 如何优化HBase的存储性能?3. 如何优化HBase的内存性能?4. 如何优化HBase的磁盘性能?5. 如何优化HBase的Zookeeper性能?6. 如何优化HBase的regionserver性能?7. 如何优化HBase的master性能?8. 如何优化HBase的集群性能?9. 如何优化HBase的备份性能?10. 如何优化HBase的恢复性能?七、HBase应用案例1. 如何使用HBase存储用户信息?2. 如何使用HBase存储社交网络数据?3. 如何使用HBase存储日志数据?5. 如何使用HBase存储电商数据?6. 如何使用HBase存储金融数据?7. 如何使用HBase存储地理信息数据?8. 如何使用HBase存储生物信息数据?9. 如何使用HBase存储气象数据?10. 如何使用HBase存储交通数据?HBase练习题(续)八、HBase安全与权限管理1. 如何设置HBase的用户和角色?2. 如何配置HBase的安全策略?3. 如何设置HBase的行级安全?4. 如何设置HBase的列级安全?5. 如何设置HBase的列族级安全?6. 如何使用HBase的安全模式?7. 如何使用HBase的Kerberos认证?8. 如何查看HBase的权限信息?9. 如何修改HBase的权限设置?10. 如何删除HBase的用户或角色?九、HBase备份与恢复1. 如何使用HBase的hbase shell进行备份?2. 如何使用HBase的hbaseorg.apache.hadoop.hbase.tools.HBaseShell进行备份?3. 如何使用HBase的HBase Master进行备份?4. 如何使用HBase的HBase Zookeeper进行备份?5. 如何使用HBase的HBase Regionserver进行备份?6. 如何恢复HBase的备份?7. 如何检查HBase的备份文件?8. 如何在恢复过程中避免数据丢失?9. 如何在恢复过程中处理冲突?10. 如何在恢复过程中优化性能?十、HBase与Hadoop生态圈1. 如何将HBase与Hadoop MapReduce结合使用?2. 如何将HBase与Hadoop Hive结合使用?3. 如何将HBase与Hadoop Pig结合使用?4. 如何将HBase与Hadoop Spark结合使用?5. 如何将HBase与Hadoop HDFS结合使用?6. 如何将HBase与Hadoop YARN结合使用?7. 如何将HBase与Hadoop Flume结合使用?8. 如何将HBase与Hadoop Sqoop结合使用?9. 如何将HBase与Hadoop Oozie结合使用?10. 如何将HBase与Hadoop ZooKeeper结合使用?十一、HBase监控与故障排查1. 如何监控HBase的CPU、内存、磁盘等资源使用情况?2. 如何监控HBase的regionserver和master的性能?3. 如何监控HBase的Zookeeper性能?4. 如何监控HBase的集群状态?5. 如何使用HBase的日志文件进行故障排查?6. 如何使用HBase的JMX进行故障排查?7. 如何使用HBase的监控工具进行故障排查?8. 如何处理HBase的region分裂问题?9. 如何处理HBase的region合并问题?10. 如何处理HBase的region热点问题?十二、HBase最佳实践1. 如何设计HBase的表结构?2. 如何选择合适的RowKey?3. 如何选择合适的列族?4. 如何选择合适的列?5. 如何优化HBase的查询性能?6. 如何优化HBase的写入性能?7. 如何优化HBase的存储性能?8. 如何优化HBase的备份和恢复性能?9. 如何优化HBase的集群性能?10. 如何优化HBase的安全性能?HBase练习题(续)十三、HBase与大数据应用1. 如何使用HBase进行实时数据分析?2. 如何使用HBase进行大数据查询优化?3. 如何使用HBase进行大数据流处理?4. 如何使用HBase进行大数据机器学习?5. 如何使用HBase进行大数据数据挖掘?6. 如何使用HBase进行大数据社交网络分析?7. 如何使用HBase进行大数据推荐系统?8. 如何使用HBase进行大数据物联网应用?9. 如何使用HBase进行大数据金融风控?10. 如何使用HBase进行大数据医疗健康分析?十四、HBase与开源工具1. 如何使用Apache Phoenix与HBase集成?2. 如何使用Apache HBaseShell进行数据操作?3. 如何使用Apache HBaseThrift进行客户端开发?4. 如何使用Apache HBaseClient进行Java客户端开发?5. 如何使用Apache HBaseShell进行数据备份与恢复?6. 如何使用Apache HBaseMaster进行集群管理?7. 如何使用Apache HBaseRegionserver进行数据存储管理?8. 如何使用Apache HBaseZookeeper进行集群协调?9. 如何使用Apache HBaseHadoop集成进行MapReduce任务?10. 如何使用Apache HBaseHive进行数据查询与分析?十五、HBase性能测试1. 如何设计HBase的性能测试方案?2. 如何使用Apache JMeter进行HBase性能测试?3. 如何使用Apache Benchmark进行HBase性能测试?4. 如何使用Apache Thrift进行HBase性能测试?5. 如何分析HBase性能测试结果?6. 如何优化HBase性能测试中的瓶颈?7. 如何评估HBase在不同硬件环境下的性能?8. 如何评估HBase在不同数据量下的性能?9. 如何评估HBase在不同并发用户下的性能?10. 如何评估HBase在不同读写比例下的性能?十六、HBase社区与资源1. 如何获取HBase官方文档?2. 如何参与HBase社区?3. 如何在HBase社区提问和解答问题?4. 如何关注HBase的GitHub项目?5. 如何获取HBase的?6. 如何获取HBase的补丁和更新?7. 如何获取HBase的教程和指南?8. 如何获取HBase的案例研究?9. 如何获取HBase的博客和论坛?10. 如何获取HBase的培训课程和认证?HBase练习题(续)十七、HBase数据模型与设计1. 如何设计HBase中的RowKey以优化查询性能?2. 如何设计HBase中的列族以减少存储开销?3. 如何设计HBase中的列以支持灵活的数据访问?4. 如何设计HBase中的时间戳以支持时间序列数据?5. 如何设计HBase中的版本控制以支持数据历史记录?6. 如何设计HBase中的数据分区以支持大规模数据?7. 如何设计HBase中的数据压缩以优化存储空间?8. 如何设计HBase中的数据加密以保障数据安全?9. 如何设计HBase中的数据备份策略以防止数据丢失?10. 如何设计HBase中的数据恢复流程以应对故障?十八、HBase应用场景1. 如何使用HBase进行实时用户行为分析?2. 如何使用HBase进行大规模日志数据存储和分析?3. 如何使用HBase进行大规模物联网设备数据存储?4. 如何使用HBase进行大规模社交网络数据存储和分析?5. 如何使用HBase进行大规模电子商务数据存储和分析?6. 如何使用HBase进行大规模金融交易数据存储和分析?7. 如何使用HBase进行大规模基因数据存储和分析?8. 如何使用HBase进行大规模气象数据存储和分析?9. 如何使用HBase进行大规模地理信息系统(GIS)数据存储?10. 如何使用HBase进行大规模视频和音频数据存储?十九、HBase与分布式系统1. 如何在分布式系统中部署HBase?2. 如何配置HBase以支持分布式存储?3. 如何配置HBase以支持分布式计算?4. 如何在分布式系统中进行HBase的负载均衡?5. 如何在分布式系统中进行HBase的故障转移?6. 如何在分布式系统中进行HBase的数据一致性和分区容错?7. 如何在分布式系统中进行HBase的性能监控和优化?8. 如何在分布式系统中进行HBase的安全性和权限管理?9. 如何在分布式系统中进行HBase的备份和恢复?10. 如何在分布式系统中进行HBase的集群管理和维护?二十、HBase与云服务1. 如何在云服务中部署HBase?2. 如何配置HBase以适应云服务的弹性伸缩?3. 如何在云服务中监控HBase的性能和资源使用?4. 如何在云服务中优化HBase的成本和效率?5. 如何在云服务中实现HBase的跨地域数据同步?6. 如何在云服务中保障HBase的数据安全和隐私?7. 如何在云服务中实现HBase的自动化备份和恢复?8. 如何在云服务中实现HBase的自动化扩展和缩减?9. 如何在云服务中实现HBase的跨云迁移?10. 如何在云服务中实现HBase的跨云数据共享?答案:一、HBase基础知识1. HBase是一个分布式的、可伸缩的、支持列存储的NoSQL数据库。
软件开发框架(J2EE)Hibernate映射与检索习题与答案
一、单选题1.下面关于Hibernate的说法,错误的是()。
A、Hibernate是一个“对象-关系映射”的实现B、Hibernate是一种数据持久化技术C、Hibernate是JDBC的替代技术D、使用Hibernate可以简化持久化层的编码2.在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是()。
A、配置客户和订单关联的cascade属性为save-updateB、配置客户和订单关联的cascade属性为allC、设置多对一关联的inverse属性为trueD、设置多对一关联的inverse属性为false3.下面一对多关联的配置中,存在哪些错误()。
<set name="orders" inverse="false" cascade="true"><one-to-many class="com.x.entity.Order"column="customer_id" /></set>A、cascade属性不可设置为trueB、inverse属性不可以设置为falseC、class="com.x.entity.Order"应为type="com.x.entity.Order"D、column属性不可再<one-to-many>节点内设置4.下面创建Criteria对象的语句中正确的是()。
A、Criteria c = query.createCriteria();B、Criteria c = query.addCriteria();C、Criteria c = session.createCriteria();D、Criteria c = session.createCriteria(User.class);5.下面关于Hibernate映射文件配置中dynamic-update属性说法正确的是()。
Struts和Hibernate测试题
1一下关于struts的描述中,不正确的是()A.struts 是一个基于JAVA EE的MVCB.struts2的框架配置文件是struts-configxmlC.struts2的控制组建核心包括核心控制和业务控制器D.在struts中解决中文乱码可以通过修改struts。
I18n。
encoding的值为GBK来实现2.不属于Struts2的动作类的常量返回值的是()A.success B.Input C.Never D.login3.一下不属于Struts2动作执行的结果类型是()a.Action b.Redirect c.RedirectAction d.dispatcher4.在struts.xml中。
假如在一个package中没有配置namespace,那么在其中配置一个Action 名字叫做login,它的result是这样配置的<result>/login.jsp</result>,已知在此配置文件中还有另一个name为user的package其中也有一个Action名字为login,它的result是这样配置的<result>/loginUser.jsp</result>那么在以下什么情况下将能访问到login.jspA.在根路径后输入/loginB.在根路径后输入/user/loginC.在根路径后输入/login/userD.在根路径后输入/abc/login5.正规开发中,在使用struts2时定义Action使用哪种方式。
A.直接定义Action类。
B.从ActionSupport继承。
C.从Action继承。
D.实现Action接口。
6.不同的线程在调用Action时创建几个Action实例。
A.1个B.2个C.每个线程创建1个。
D.可以自定义配置。
7.struts2的体系结构主要包括那几个部分()A.模型层B.struts控制器组件C。
Hibernate复习题1含答案
美斯坦福在线考试系统荆州理工G3 Hibernate科目: SCCEG3Hibernate总分: 100分时间: 60分钟一、单选题(共45题,每题2分,说明:选择一项正确的答案)1、下面关于Hibernate的说法,错误的是()A、Hibernate是一个“对象-关系映射”的实现B、Hibernate是一种数据持久化技术C、Hibernate是JDBC的替代技术他是对JDBC做了轻量级的对象封装D、使用Hibernate可以简化持久化层的编码参考答案: C2、在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是()A、配置客户和订单关联的cascade属性为save-updateB、配置客户和订单关联的cascade属性为allC、设置多对一关联的inverse属性为trueD、设置多对一关联的inverse属性为false参考答案: B详解3、下面一对多关联的配置中,存在哪些错误()<set name="orders" inverse="false" cascade="true"><one-to-many class="com.x.entity.Order"column="customer_id" /></set>A、inverse属性不可以设置为falseB、cascade属性不可设置为trueC、class="com.x.entity.Order"应为type="com.x.entity.Order"D、column属性不可再<one-to-many>节点内设置参考答案: B4、下面创建Criteria对象的语句中正确的是()A、Criteria c = query.createCriteria();B、Criteria c = query.addCriteria();C、Criteria c = session.createCriteria();D、Criteria c = session.createCriteria(User.class);参考答案: D5、下面关于Hibernate映射文件配置中dynamic-update属性说法正确的是()详解A、动态的修改,如果为true,只改变有改变的属性B、动态的修改,如果为true,只改变没有改变过的属性C、动态的修改,如果为true,改变所有的属性D、以上说法都错参考答案: A6、下面关系Hibernate对象的状态说话正确的是()临时持久化游离A、Hibernat的对象只有一种状态B、Hibernat的对象有2种状态C、Hibernat的对象有3种状态D、Hibernat的对象有4种状态参考答案: C7、Hibernate对象从瞬时到持久状态转换的方式有()。
Hibernate简答题
2.读取并解析映射信息,创建SeesionFactory
3.打开Session
4.开启事务
5.数据库的操作
6.事务提交或回滚
7.关闭Session
5.Hibernate中实体对象的状态有哪几种?
自由状态,持久化状态,游离状态
6.Session接口常用的方法有哪些?
13.什么是连接池?其工作原理是?
JDNI,就是创建和管理连接的一种技术
实现在内存中加载一定数量的连接,当程序请求连接时直接提供给程序使用,使用完毕后不会关闭连接,而是放回内存,以供其他程序请求使用
优点:减少创建连接的时间,简化编程模式,受控的资源使用
14.什么是缓存?缓存的优缺点?Hibernate的缓存分几种?
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
17."hibernate.dialect"属性的作用是什么?
方言,就是区别数据库的作用
缓存是位于应用程序和数据源之间的,用来存放临时复制数据的内存区域,其目的的为了减少数据源的访问次数,提高系统性能
优点:提高访问效率,提高系统性能
缺点:
一级缓存,二级缓存,查询缓存
15.hibernate.cfg.xml和User.hbm.xml分别是干什么的?
hibernate.cfg.xml----hibernate 配置文件
Hibernate框架技术习题
一、笔试部分(每题10分,共5×12分=60分)1、如何理解ORM和Hibernate的持久化对象?2、如何理解Hibernate的Configuration、SessionFactory、Session对象?Configuration: (1)当创建一个SessionFactory的时候,Configuration实例允许应用程序使用指定的资源文件和映射文件,通常一个应用程序将创建唯一的Configuration,创建一个唯一的SessionFactory,接着创建客户端请求服务的线程所需要的Session实例。
(2)只被当做初始化一次,Sessionfactory不可改变,不能保留任何信息。
(3)其中该对象里有个方法叫buildSessionFactory(),作用:在这个Configuration对象里使用资源文件和映射文件,因此改变这个Configuration后,创建的SessionFactory将不受影响。
Session:是在java应用程序和Hibernate之间运行的主要接口。
主要Session的方法是为映射的实体类对象提供创建,读,删操作。
一个实例可能存在三种状态:A:transient(短暂态):没有进行持久化,也没连接任何Session。
B:persistent(持久态):连接了唯一的Session。
C:detached(释放态):持久性过了,没有与任何Session关联。
SessionFactory:它的主要作用就是创建Session实例,通常一个应用程序有一个唯一的SessionFactory实例和从这个SessionFactory里包含客户端请求服务所需要的Session。
一个SessionFactory的内部状态时不可以改变的只要它被创建,这个内部状态就被决定了,这种内部状态包含了所有的对象映射关系的元数据3、试绘出Hibernate的体系结构图并加以说明。
hibernate课后习题
...
<one-to-many name="teacher" column="teacherId" class="Teacher"/>
B.
<class name="Teacher" table="TBL_Teacher">
</set>
B.
<set name="empAddresses" inverse = "true" cascade="save-update">
<key>
<column name="EMP_ID"></clomun>
</key>
<one-to-many class="com.hr.g3.persist.EmpAddress" />
query.setString(0."%张明%"); //(3)
List list = query.list(); //(4)
<set name="addresses" table="emp_address" cascade="save-update">
<key>
<column name="EMP_ID" not-null="true"/>
Hibernate-测试题目
--------------------------------------装--------------------------------------订------------------------------线----------------------------------------**学院课程考试试卷课程名称:《Hibernate:使用Hibernate&EJB开发持久层企业及应用》(A)卷年级:班级:姓名:_______________ 学号:_________________ 考试(考查) 闭卷题号1-20 21-40 41-50 总分分数选择题(每题2分,共计100分)1.在三层结构中,数据访问层承担的责任是()。
BA.定义实体类B.数据的增删改查操作...C.业务逻辑的描述D.页面展示和控制转发2.下面关于Hibernate的说法,错误的是()。
CA.Hibernate是一个“对象-关系映射”的实现B.Hibernate是一种数据持久化技术C.Hibernate是JDBC的替代技术…D.使用Hibernate可以简化持久化层的编码3.Hibernate配置文件中,不包含下面的()。
[选两项]A.“对象-关系映射”信息…B.实体间关联的配置…C.show_sql等参数的配置D.数据库连接信息4.在Hibernate关系映射配置中,inverse=true属性的含义是( C )。
A.定义在<one-to-many>节点上,声明要负责关联的维护B.声明在<set>节点上,声明要对方负责关联的维护…C.定义在<one-to-many>节点上,声明对方要负责关联的维护D.声明在<set>节点上,声明要负责关联的维护5.在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是( B )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hibernate练习题1.一般情况下,关系数据模型与对象模型之间有哪些匹配关系(多选)ABCA)表对应类B)记录对应对象C)表的字段对应类的属性D)表之间的参考关系对应类之间的依赖关系2.试述load()和get()的区别。
1.从返回结果上对比:load方式检索不到的话会抛出org.hibernate.ObjectNotFoundException异常get方法检索不到的话会返回null2.从检索执行机制上对比:get方法和find方法都是直接从数据库中检索而load方法的执行则比较复杂首先查找session的persistent Context中是否有缓存,如果有则直接返回如果没有则判断是否是lazy,如果不是直接访问数据库检索,查到记录返回,查不到抛出异常如果是lazy则需要建立代理对象,对象的initialized属性为false,target属性为null 在访问获得的代理对象的属性时,检索数据库,如果找到记录则把该记录的对象复制到代理对象的target上,并将initialized=true,如果找不到就抛出异常。
hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,只能抛异常;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。
3.简述使用Hibernate完成持3久化操作的3个准备和7个步骤。
1.创建Congfigure对象。
读取并解析配置文件(相当于使用数据源(DataSource)获取连接前读取DataSource的配置文件):Configuration conf=new Configuration().configure();2.读取并解析映射信息,创建SessionFactory(相当于创建了数据源(DataSource)对象),它是产生Session 对象实例的工厂,它是唯一的。
:SessionFactory sf=conf.buildSessionFactory();3.创建Session对象,打开session(相当于JDBC获得数据库的连接):Sessionsession=sf.openSession();4.开始一个事务(增删改必须,查可选):tx=sessionl.beginTransaction();5.持久化操作:session.save(user);6.结束事务:mit();7.关闭session,释放数据库的链接:session.close();三个准备如下:1.需要的jar包2.Hibernate配置文件3.实体类和映射文件注:于JDBC类似,持久化操作要放在try{}语句块中,如果发生异常则将事物回滚。
关闭session的语句放在finally{}语句块中。
4.在持久化层,对象分为哪些状态?(多选)ACDA)临时状态B)独立状态C)游离状态D)持久化状态5.事务隔离级别是由谁实现的?(单选)CA)Java应用程序B)HibernateC)数据库系统D)JDBC驱动程序6.假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现什么情况(单选)CSession session=sessionFactory.openSession();tx = session.beginTransaction();Customer customer=(Customer)session.get(Customer.class,new Long(1));mit();session.close();Iterator orderIterator=customer.getOrders().iterator();A)编译出错B)编译通过,并正常运行C)编译通过,但运行时抛出异常7.以下程序代码对Customer的name属性修改了两次:tx = session.beginTransaction();Customer customer=(Customer)session.load(Customer.class,new Long(1));customer.setName(\"Jack\");customer.setName(\"Mike\");mit();执行以上程序,Hibernate需要向数据库提交几条update语句?(单选)BA)0 B)1 C)2 D)38.以下关于SessionFactory的说法哪些正确?(多选)BCA)对于每个数据库事务,应该创建一个SessionFactory对象B)一个SessionFactory对象对应一个数据库存储源。
C)SessionFactory是重量级的对象,不应该随意创建。
如果系统中只有一个数据库存储源,只需要创建一个。
D)SessionFactory的load()方法用于加载持久化对象9.Customer类中有一个Set类型的orders属性,用来存放Order订单对象,在Customer.hbm.xml文件中,用哪个元素映射orders属性?AA)<set> B)<one-to-many> C)<many-to-one> D)<property>10.<set>元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取什么值?(单选)DA)none B)save C)delete D)save-update11.试述Hibernate有哪些检索方式?HQL检索方式QBC检索方式本地SQL检索方式12.对于以下程序,Customer对象在第几行变为游离状态?(单选)F Customer customer=new Customer(); //line1customer.setName(\"Tom\"); //line2Session session1=sessionFactory.openSession(); //line3Transaction tx1 = session1.beginTransaction(); //line4session1.save(customer); //line4mit(); //line5session1.close(); //line6A) line1 B)line2 C)line3 D)line4E)line5 F)line613.如何优化Hibernate查询性能?1 )lazy=true,hibernate3开始已经默认是lazy=true了;lazy=true时不会立刻查询关联对象,只有当需要关联对象(访问其属性,非id字段)时才会发生查询动作。
2)二级缓存,在对象更新,删除,添加相对于查询要少得多时,二级缓存的应用将不怕n +1 问题,因为即使第一次查询很慢,之后直接缓存命中也是很快的。
14.以下程序的打印结果是什么?Ctx = session.beginTransaction();Customer c1=(Customer)session.load(Customer.class,new Long(1));Customer c2=(Customer)session.load(Customer.class,new Long(1));System.out.println(c1==c2);mit();session.close();A)运行出错,抛出异常B)打印falseC)打印true D)运行通过,但什么都不显示15.下面关于hibernate核心接口说明错误的是?BA)Configuration 接口:配置Hibernate,根据其启动hibernate,创建SessionFactory对象;B)SessionFactory 接口:负责保存、更新、删除、加载和查询对象,是线程不安全的,避免多个线程共享同一个session,是轻量级、一级缓存;C)Query 和Criteria 接口:执行数据库的查询;D)Transaction 接口:管理事务。
16.下面代码的执行效果是(A )。
String hql = "from TblStudent s order by s.score desc";Query query = session.createQuery(hql);query.setFirstResult(0);query.setMaxRexults(5)return query.list();A)返回分数最高的5个学生B)返回分数最高的6个学生C)返回分数最低的5个学生D)返回分数最低的6个学生17.下面(AB )不是Hibernate映射文件中包含的内容。
(选2项)A)数据库连接信息B)Hibernate属性参数C)主键生成策略D)属性数据类型18.下面是某系统中的两个实体类,依次可以得知( B )。
public class Wage{ //月工资实体类private Long wid;private String empName; //雇员姓名private String month; //月份//Getter & Setter…}public class WageItem{ //工资项private Wage wage;private Long iid;private String itemName; //项目名称private String amount; //数额//Getter & Setter…}A)Wage和WageItem间存在单向一对多的关联B)Wage和WageItem间存在单向多对一的关联C)Wage和WageItem间存在双向一对多的关联D)Wage和WageItem间存在双向多对一的关联20.下面程序执行后没有报错,但数据总保存不到数据库,最可能的原因是(E)。
public static void main(String[] args){SessionFactory sf =new Configuration().configure().buildSessionFactory();Session session = sf.openSession();Medal medal=new Medal();medal.setOwner("Lily");medal.setSport("Table Tennis-Women 's Singles");medal.setType("Glod Medal");session.save(medal);session.close();}A)没有在配置文件中包含对映射文件的声明B)配置文件配置有误C)映射文件配置有误D)没有对持久化操作捕捉异常E)没有开启事务21.下面(A )不属于关系-对象映射的映射信息。