Hibernate_测试题
- 格式:doc
- 大小:81.00 KB
- 文档页数:10
软件开发应知应会(2)一、单选题1、主流的开源分布式存储有()HDFS Swift D.以上都是2、质量管理八项原则中,()是一个组织永恒的目标。
A.领导作用B.全员参与C.持续改进D.过程方法3、栈和队列的共同特点是()A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除D.没有共同点4、在一棵二叉树中,度为0的节点个数是n0,度为2的节点个数是n2,则有n0=____。
+1 +25、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需要向后移动()个元素B. n-i+16、在一个对象中包含的其他对象和变量被称为()A.特性(property)B.方法(method)C.数组D.集合(LIST)7、在微服务架构中,需要实现(),去跟进一个请求到底有哪些服务参与,参与的顺序又是怎样的,从而使每个请求链路清晰可见,出现问题很快就能定位。
A.分布式链路追踪B.熔断器C.负载均衡D.服务网关8、在三层结构中,Hibernate承担的任务是()。
A.数据的持久化操作B.实体类的定义C.业务逻辑的描述D.页面的显示与控制转发9、在Struts实现的MVC框架中()类是包含了execute方法的控制器类,负责调用模型的方法,控制应用程序的流程。
10、在shell中,使用一个定义过的变量,引用时在变量名前加()。
A.$B.&C.*D.@11、在CMMI中,()对项目流程的管理做到量化、数字化、具体化。
A.初始级B.已定义级C.量化管理级D.优化管理级12、在CMMI初始级时候,()是这一个级别最关键的因素A研发人员 B.企业 C.测试人员 D.运维人员13、在C#中,下列类型哪个不属于引用类型()。
14、在C#中,下列关于数组访问的描述中,哪些选项是错误的()。
A数组元素索引是从0开始的B.对数组元素的所有访问都要进行边界检查C.如果使用的索引小于0,或大于数组的大小,编译器将跑出一个 n15、在Struts实现的MVC框架中()类是包含了execute方法的控制器类,负责调用模型的方法,控制应用程序的流程。
ACCP7.0内部测试学期: Y2 模块:Java考试时间: 50分钟总分数:100分注意:1、请勿在试卷上留下笔迹2、交卷时试题和答案均要上交《使用Hibernate开发租房系统》内部测试笔试题一、选择题(共25题,每题2.5分,选择一项或多项,漏选错选不得分)1.在Hibernate中,以下关于主键生成器说法错误的是()。
A.increment可以用于类型为long、short或byte的主键B.identity用于如SQL Server、DB2、MySQL等支持标识列的数据库C.sequence用于如Oracle、SQL Server等支持序列的数据库D.native由Hibernate根据底层数据库自行判断采用何种主键生成策略,是由使用的数据库生成主键的值2.在Hibernate中,关于脏检查和刷新缓存说法正确的是()。
A.当事务提交时,会发生脏检查B.Session的flush( )方法是刷新缓存的方法C.在执行Session的commit( )方法之前不会调用Session的flush( )方法D.编写代码时,调用commit( )方法之前要调用flush( )方法3.使用HQL查询所有部门信息,以下正确的是()。
A.from DeptB.select * from cn.jbit.demo.entity.DeptC.select Dept from cn.jbit.demo.entity.Dept dD.select d from Dept d4.关于Query接口的list( )和iterate( )方法,说法正确的是()。
A.执行list( )方法,查询所有符合条件的记录B.执行iterate( )方法,查询所有符合条件的记录C.执行list( )方法,查询出所有符合条件的主键值D.执行iterate ( )方法,查询出所有符合条件的主键值5.在HQL中,关于Query接口绑定参数的方法,说法正确的是()。
软件开发——软件测试1、测试的关键问题是()A.如何组织对软件的评审 B.如何验证程序的正确性C.如何采用综合策略 D.如何选择测试用例2、下面不属于软件测试步骤的是A.集成测试 B.回归测试 C.确认测试 D.单元测试3、自底向上集成需要测试员编写驱动程序。
请判断这句话的正确与否。
A.T B.F4、测试人员要坚持原则,缺陷未修复完坚决不予通过。
请判断这句话的正确与否。
A.T B.F5、软件测试类型按开发阶段划分是?A.需求测试、单元测试、集成测试、验证测试B.单元测试、集成测试、确认测试、系统测试、验收测试C.单元测试、集成测试、验证测试、确认测试、验收测试D.调试、单元测试、集成测试、用户测试6、如果我们可以通过覆盖率检测来判断我们是否对所有的路径都进行了测试,但是仍然可能存在未被检测出来的缺陷,原因是()A.全部选项B.程序可能因为缺某些路径而存在问题C.穷举路径的测试可能不好暴露数据敏感的错误D.就算穷举路径测试也不能保证程序符合需求7、下面哪些属于网游的测试内容?A.客户端性能B.服务器端性能C.从运行完 game.exe 打开游戏界面后可进行的各种操作、玩法D.界面8、下述有关负载测试,容量测试和强度测试的描述正确的有?A.负载测试:在一定的工作负荷下,系统的负荷及响应时间。
B.强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。
C.容量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。
D.容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。
9、集成测试的过程包括有以下哪些?A.构建的确认过程 B.系统集成测试测试组提交过程C.测试用例设计过程 D.Bug的报告过程10、下面关于软件测试,描述正确的是?A.软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。
软件开发——软件测试1、测试的关键问题是()A.如何组织对软件的评审B.如何验证程序的正确性C.如何采用综合策略D.如何选择测试用例2、下面不属于软件测试步骤的是A.集成测试B.回归测试C.确认测试D.单元测试3、自底向上集成需要测试员编写驱动程序。
请判断这句话的正确与否。
A.T B.F4、测试人员要坚持原则,缺陷未修复完坚决不予通过.请判断这句话的正确与否。
A.T B.F5、软件测试类型按开发阶段划分是?A.需求测试、单元测试、集成测试、验证测试B.单元测试、集成测试、确认测试、系统测试、验收测试C.单元测试、集成测试、验证测试、确认测试、验收测试D.调试、单元测试、集成测试、用户测试6、如果我们可以通过覆盖率检测来判断我们是否对所有的路径都进行了测试,但是仍然可能存在未被检测出来的缺陷,原因是()A.全部选项B.程序可能因为缺某些路径而存在问题C.穷举路径的测试可能不好暴露数据敏感的错误D.就算穷举路径测试也不能保证程序符合需求7、下面哪些属于网游的测试内容?A.客户端性能B.服务器端性能C.从运行完game。
exe 打开游戏界面后可进行的各种操作、玩法D.界面8、下述有关负载测试,容量测试和强度测试的描述正确的有?A.负载测试:在一定的工作负荷下,系统的负荷及响应时间。
B.强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。
C.容量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。
D.容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。
9、集成测试的过程包括有以下哪些?A.构建的确认过程B.系统集成测试测试组提交过程C.测试用例设计过程D.Bug的报告过程10、下面关于软件测试,描述正确的是?A.软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。
关于hibernate的LazyInitializationException异常今天使用hibernate处理双向关联关系时出现了一个问题,先看一段代码:这是在dao层写的一个简单的查询方法实现,通过id查询班级信息,并通过hibernate关联查询班级所有的学生信息:public Grade findById(int id){Session session HibernateUtil.getSessionFactory().openSession();Grade grade=(Grade)session.load(Grade.class,id);session.close();return grade;}我在测试类的main方法里写了如下代码进行测试:GradeDao gdao=new GradeDao();Grade findGrade=gdao.findById(143402);Set<Student>students=findGrade.getStudents();System.out.println(findGrade.getGname()+"有如下学生:");for(Student stu:students){System.out.println(stu.getSname());}先说明一下:Grade和student里的数据是通过关联写进数据库的,所以证明两个实体被正确关联,数据库中班级表中我已经写入了班号为143402的班级信息,学生表中也存在班号为143402的学生信息,所以看起来这两段代码应该没问题,但是当我运行的时候发生如下异常:(图片:1)后来我上网查了一下,hibernate3在one-to-many关联中,所有的实体设置文件中的lazy 属性都被默认设成了lazy=“proxy”,此处proxy相当于true,lazy=”true“意思是延时加载,简单理解就是,你使用了lazy=true,这样hibernate在从数据库中调数据的时候是不会把关联的对象查出来的,而是保存一个获取值得方法,在你使用getXXX()调用的时候,hiberante会利用这个保存的方法去从数据库中取数据。
XRL-机试题-Java多选题1.下面哪些是sql执行计划中的access path (该题为必答题) abcda)hash joinb)index scanc)nested loopd)full table scan2.以下关于主键和唯一索引的区别有哪些是正确的 (该题为必答题) aca)主键每个表只能有一个,唯一索引可以多个b)主键顺序为数据的物理顺序c)主键:默认将是聚簇索引唯一索引:默认将是非聚簇索引d)主键不能空,唯一索引可以为空3.搭建一个企业级J2EE B/S架构应用,代码大概分几层 (该题为必答题) abca)DAO/SAOb)Controllerc)Serviced)Action4.下列说法错误的有 (该题为必答题) abca)Java语言中的方法属于类中的成员(member)b)Java面向对象语言容许单独的过程与函数存在c)Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同d)Java面向对象语言容许单独的方法存在5.下面关于变量及其范围的陈述哪些是对的 (该题为必答题) aca)局部变量在使用前必须被初始化b)实例变量是类的变量c)在方法中定义的局部变量在该方法被执行时创建d)实例变量用关键字static 声明6.关于J2EE描述正确的是 (该题为必答题) aa)J2EE提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java ServerPages)以及XML技术的全面支持b)是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构c)J2EE是一个产品d)一个J2EE应用必须是基于Web的7.下列正确的有 (该题为必答题) acda)call by reference能改变实际参数的内容b)call by reference不能改变实际参数的参考地址c)call by value不会改变实际参数的数值d)call by reference能改变实际参数的参考地址8.下面关于Abstract Class和Interface区别正确的有哪些 (该题为必答题)acba)C、接口可以实现多个,但类只能继承一个;b)D、抽象类可以实例化,但接口不能;A、接口没有任务的实现,而抽象类可以有部分的实现也可以没有;B、如果需要复用或者共享部分代码,应该用抽象类而不是接口;9.下面那条语句编译不会出现错误 (该题为必答题) abcda)int x = (int);b)byte b = 127;c)Boolean b = new Boolean("abcd");d)float f = 123;10.使用EJB调用其它的EJB,所需要的操作有: (该题为必答题)abda)调用EJB对象的业务方法b)调用Home对象的create()c)调用EJB对象的remove()d)通过JNDI查找另外一个EJB的Home对象11.下面的说法正确的是: (该题为必答题) ca)File类是输入/输出流类的子类。
工程组(Engg)访谈问题汇总:1、需求开发与管理(RD、REQM)1.1如何进行需求开发?需求开发的主要活动有哪些?如何进行需求的管理?活动:1)通过调研获得客户的需求(用户调研,形成用户需求调查表;快速原型即Demo 方式向客户确认需求).2)产生文档:用户需求说明书.3)分解客户需求产生一个初步的产品需求,产生文档:产品需求说明书4)分析未确认的产品需求,平衡其优先级,评审产品需求说明书(正式技术评审参与人员技术评审小组成员、项目经理,文档作者),得到一个通过客户确认签字的用户需求说明书和产品需求规格说明书。
管理:1)获得需求理解(用例图描述使得设计和开发等成员理解);2)需求承诺(客户签字)3)变更控制(用户提出需求的变更—>区分需求的大小,小的需求变更可以直接改;大的需求变更需要提出申请-->经过变更委员会评审,评审内容分析变更需求影响的范围大小等,最后取得一致性结论—>不接受;接受,修改受影响的配置项,包括在这之前的所有工程文档,要求配置管理员从基线库中调出来,重新生成新版本的配置项,再次经过技术评审,通过之后由配置管理员纳入基线库,重新发布)问题:怎么区分需求变更的大小?4)双向跟踪(RTM)5)获得需求一致性(贯穿整个工程过程)配置项内容:1)需求—>用户需求调查报告、用户需求说明书、需求跟踪矩阵、产品规格说明书2)设计-->概要设计说明书、数据库设计说明书、详细设计说明书3)编码-->代码、代码审查报告、单元测试计划、单元测试用例、单元测试用例结果记录、单元测试报告、集成测试计划、集成测试用例、集成测试用例结果记录、集成测试报告4)测试-->系统测试计划、系统测试用例、系统测试用例结果记录、系统测试报告5)验收-->验收申请、验收计划、验收测试用例、验收测试用例结果记录、验收报告、版本发布说明书、移交清单2、如何进行需求评审?需求评审有哪些准则?对需求(正式文档)进行正式技术评审:1)向公司高层提出评审申请。
medal.setType("Gold Medal");session.save(user);session.close();}A.配置文件配置有误B.没有在配置文件中包含对映射文件的声明C.映射文件配置有误D.没有开启事务5.下列属于多对一关系的是(bd )。
(选两项)A.书和作者B.手机和生产厂家C.用户和发布的出租信息D.士兵和班长6.下面是某系统中的两个实体类,依此可以得知(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间存在双向多对一的关联7.两实体类代码如下: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……}其中的WageItem 实体类有如下配置,其中空白处应填入的代码是(a)。
<class name="WageItem" table="fin_wage_item"<id name="iid" column="wi_id" type="ng.Long"><generator class="native" /></id><property name="itemName" column="wi_name"type="ng.String" /><property name="amount" column="wi_amount"type="ng.Double" /><!--配置wage 属性-->______________________</class>A.<many-to-one name="wage" column="wi_wage_id" class="Wage" />B.<one-to-many name="wage" column="wi_wage_id" class="Wage" />C.<set name="wage"><key column="wi_wage_id" /><one-to-many class="Wage" /></set>D.<set name="wage"><key column=" wi_wage_id" /><many-to-one class="Wage" /></set>8.已知系统中TBL_USER 表对应的实体类是TblUser,下列HQL 语句中正确的是()。
A.from Tbl_UserB.select * from tbluserC.select TblUser from TblUserD.from TblUser t where t.age= 159.对下面代码中存在的错误,说法不正确的是(d )。
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);”10.下面代码的执行效果是(c)。
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.返回分数最低的六个学生11.下面HQL语句的含义是(D)。
select stufrom TblStudent stuwhere stu.score > ( select avg(score) from TblStudent )A.查询所有学生的平均分B.查询得分大于平均分的学生的成绩C.查询得分最高的学生D.查询得分大于平均分的学生12.假设对Customer 类的orders 集合采用延迟检索策略,编译或运行以下程序,会出现(C )Session session=sessionFactory.openSession();Customer customer=(Customer)session.get(Customer.class,new Long(1));session.close();Iterator orderIterator=customer.getOrders().iterator();A.编译出错B.编译通过,并正常运行C.编译通过,但运行时抛出异常D. 运行时输出“session.open”13.选出不是Expression方法的选项(DA.eq()B.gt()C.like()D.isNULL()14.与下面代码效果相同的HQL 语句是(A )。
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 from Useras u where u. Restrictions like 'admin%'15.执行下面代码返回的结果为(A)。
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.不返回对象16.下面代码能够返回房屋表中第51行数据后的20 行数据的是(B )。
A.Criteria criteria = session.createCriteria(House.class);Criteria.setFirstResult(51);List result = criteria.list();B.Criteria criteria = session.createCriteria(House.class);Criteria.setFirstResult(51);criteria.setMaxResult(20);List result = criteria.list();C.Criteria criteria = session.createCriteria(House.class);criteria.setMaxResult(20);List result = criteria.list();D.Criteria criteria = session.createCriteria(House.class);Criteria.setFirst(51);criteria.setMax(20);List result = criteria.list();17.下面关于Hibernate关联映射说法错误的是()。
A. 配置单项多对一关联映射,在配置文件中需要使用<many-to-one>标签B. 面向对象领域的关联关系可以分为单向一对多或者单向多对一C. 人和手机号码之间的关系是一对多关系D. cascade属性描述了级联操作的规则18.如果数据库是oracle或者db2,则generator属性值不可以使用(B)。