中软高科阶段测试
第三阶段阶段考核
理论知识试卷
笔试(A 卷) [时间:60分钟]
[总分数:100 总题数:50] [姓名: ] [班级: ] [学号: ]
注意:考试结束时间到,必须交回试卷,不交回试卷者成绩无效。
文案大全
实用文档
一、单项选择题(四选一)单选25道题,共50分
1. 在三层结构中,数据访问层承担的责任是( B ) A. 定义实体类
B. 数据的增删改查操作 C. 业务逻辑的描述 D. 页面展示和控制转发
2. 对于以下程序,Customer对象在第( B )行变为游离状态 Customer customer=new Customer(); //1 customer.setName(\\\"Tom\\\"); //2
Session session1=sessionFactory.openSession();//3 Transaction tx1 = session1.beginTransaction();//4 session1.save(customer);//5 tx1.commit();//6
session1.close();//7 A.line1 B.line7 C.line5 D.line3
3.从User持久化类中选出全部的实例的HQL语句,以下错误的语句是(A. select user from User as user B. from User as u C. from user D. from User 4. 下面关于Hibernate的说法,错误的是( C ) A. Hibernate是一个“对象-关系映射”的实现 B. Hibernate是一种数据持久化技术 C. Hibernate是JDBC的替代技术
D. 使用Hibernate可以简化持久化层的编码 5. 下面( C )属于Hibernate映射文件中包含的内容 A. Hibernate属性参数 B. 数据库连接信息 C. 主键生成策略
D. 属性数据类型信息 6. 关于spring说法错误的是( B ) A. spring是一个轻量级JAVA EE的框架集合 B. spring是MVC中的C,也就是controller C. spring提供了AOP的实现
文案大全
) C 实用文档
D. spring包含一个“依赖注入”模式的实现
7. 以下哪些不属于Session的方法( B ) A.load() B.open() C.close() D.delete() 8. 以下不属于Spring依赖注入方式是( C ) A. 构造方法注入
B. 属性(设值)注入 C. 成员方法注入 D. P接口注入 9. 不属于Action接口中定义的字符串常量的是( B )。 A. SUCCESS B. FAILURE C. ERROR D. INPUT
10. 在Hibernate关系映射配置中,inverse属性的含义是( B )。 A. 定义在 C. 定义在 12.执行下面的hql查询,关于返回值的说法,正确的是( B )。 select u.username,u.userid from com.x.entity.User u where u is not null A. 语法错误,不能执行 B. 返回一个类型为List的实例 C. 返回一个数组 D. 当返回结果只有一条时,返回一个数组 文案大全 实用文档 13.查找classes表中的学生总数,选以下哪个聚合函数( B ) A. Sum B. Count C. Max D. Min 14. 下面创建Criteria对象的语句中正确的是( D )。 A. Criteria c = query.createCriteria(); B. Criteria c = query.addCriteria(); C. Criteria c = session.createCriteria(); D. Criteria c = session.createCriteria(User.class); 15.如果开发的Action类实现了Action接口,该类应该包含重写方法的返回值类型为( B )。 A.action B.String C.Boolean D.int 16.以下程序的打印结果是什么?( C ) tx = 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); tx.commit(); session.close(); A. 运行出错,抛出异常 B. 打印false C. 打印true D. 编译出错 17.struts2提供了Action接口定义了5个标准的字符串常量,不包括( C )。 A. SUCCESS B. NONE C. REG D. LOGIN 18.以下程序代码: tx = session.beginTransaction(); Customer customer=(Customer)session.load(Customer.class, new Long(1)); customer.setName(\\\"Jack\\\"); customer.setName(\\\"Mike\\\"); session.update(customer); tx.commit(); 文案大全 实用文档 执行以上程序,Hibernate需要向数据库提交几条update语句?( B ) A. 0 B. 1 C. 2 D. 3 19. 对于以下程序,Customer对象在第几行变为持久化状态?( B ) Customer customer=new Customer(); customer.setName(\\\"Tom\\\"); Session session1=sessionFactory.openSession(); Transaction tx1 = session1.beginTransaction(); //line1 session1.save(customer); //line2 tx1.commit(); //line3 session1.close(); //line4 A. line1 B. line2 C. line3 D. line4 20.一下配置文件上传连接器只允许bmp图片文件代码,正确的是( D )。 A. *.bmp B. bmp C. image/*.bmp D. image/bmp 21. 假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现什么情况( D ) Session session=sessionFactory.openSession(); tx = session.beginTransaction(); Customer customer=(Customer)session.get(Customer.class,new Long(1)); tx.commit(); session.close(); Iterator orderIterator=customer.getOrders().iterator(); A. 编译出错 B. 编译通过,正常运行,不显示任何信息 C. 编译通过,正常运行,并显示出结果 D. 编译通过,但运行时抛出异常 22.Struts2提供了一个ServletActionContext类,可以通过该类来访问Servlet API,如果要实模拟得到HttpServletRequest实现方法的是哪个( B ) A. getResponse() B. getRequest() C. getServletContext() D.getPageContext() 文案大全 实用文档 23.ORM有什么好处( A ) A. 能进行关系对象的映射 B. 具有控制器功能 C. 能在服务器端保存客户端状态 D. 向DTO一项能传递数据 24.关于AOP错误的( C )。 A. AOP将散落在系统中的“方面”代码集中实现 B. AOP有助于提高系统可维护性 C. AOP已经表现出将要替代面向对象的趋势 D. AOP是一种设计模式,Spring提供了一种实现 25.struts2的文件上传功能,需要把页面表单的enctype属性设为( D ) A.application/x-www-form-urlencode B.text/plain C.不需要设置 D.multipart/form-data 二、多项选择题(至少有2个答案)多选5道题,共15分 1. 关于IOC的理解,以下说法正确的是( AB ) A. 控制反转 B. 对象被动接受依赖类 C. 对象主动寻找依赖类 D. 必须使用接口 2. 以下关于SessionFactory的说法哪些正确?( BC ) A. 对于每个数据库事务,应该创建一个SessionFactory对象 B. 一个SessionFactory对象对应一个数据库存储源。 C. SessionFactory是重量级的对象,不应该随意创建。如果系统中只有一个数 据库存储源,只需要创建一个。 D. SessionFactory的load()方法用于加载持久化对象 3. 在持久化层,对象分为哪些状态?( ACD ) A. 瞬时(Transient) B. 新建(New) C. 脱管(Detached) D. 持久(Persistent) 4. JDBC可以做哪几件事( ABC ) A. 与数据库建立连接 B. 通过JDBC-API向数据库发送SQL语句 C. 通过JDBC-API执行SQL语句 文案大全 实用文档 D. 进行实体关系的映射 5. 一般情况下,关系数据模型与对象模型之间有哪些匹配关系( ABC )。 A. 表对应类 B. 记录对应对象 C. 表的字段对应类的属性 D. 表之间的参考关系对应类之间的依赖关系 三、填空题 填空15空,共15分 1.Struts 2框架由__webWork______和___xWork_框架发展而来。 2. 在Hibernate XML影射文件中描述主键生成机制,其属性描述了主键的生成策略,至少写出三种策略名 uuid 、 native 、 assigned 。 3. Hibernate的会话接口是___Session________,它由接口 __SessionFactory___创建;Hibernate处理事务的接口是__Transaction ___;封装HQL的接口是____Query_ 。 4. 对象关系映射(ORM)的基本原则是: 类型(class)映射____对象实体___,属性(property)映射____表中的字段____, 类型的实例或对象(instance | object)映射_____数据表______。 5. Struts.xml中可以使用______ 6. Struts2 框架主要有两个核心配置文件: struts.properties 和(____struts.xml ___)。 7.Spring容器最基本的接口就是______BeanFactory________。 四、简答题 简答2道题,共10分 1.Hibernate里load和get方法的区别 答案:hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,load默认支持延迟加载,在用到对象中的其他属性数据时才查询数据库,但是万一数据库中不存在该记录,只能抛异常ObjectNotFoundEcception;所说的load方法抛异常是指在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。由于session中的缓存对于hibernate来说是个相当廉价的资源,所以在 load时会先查一下session缓存看看该id对应的对象是否存在,不存在则创建代理(load时候之查询一级缓存,不存在则创建代理)。get() 现在一级缓存找,没有就去二级缓存找,没有就去数据库找,没有就返回null ;而对于get方法,hibernate一 文案大全 实用文档 定要获取到真实的数据,否则返回null。 2.Spring框架的优点都有什么? Spring是分层的架构,你可以选择使用你需要的层而不用管不需要的部分 Spring是POJO编程,POJO编程使得可持续构建和可测试能力提高 依赖注入和IoC使得JDBC操作简单化 Spring是开源的免费的 Spring使得对象管理集中化合简单化 四、编程题 编程1道题,共10分 1.用hibernate执行增加操分为7个步骤,请简述,并写出相应的代码。 已知被存储的对象的对象名为obj。 1、解析配置文件 2、获得SessionFactory 的对象 3、获得session 的对象 4、获得Transaction 的对象 5、执行相关的数据库操作:增, 6、提交事务 7、最后还要关闭session,释放资源 Configuration conf=new Configuration().configure(); SessionFactory sf=conf.buildSessionFactory(); Session session=sf.openSession(); Transaction tx=session.beginTransaction(); session.save(obj); tx.commit(); session.close(); 文案大全 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务