黑龙江财经学院2017-2018学年第一学期《软件开发平台与技术》期末考试试卷第1页(共4页)装年级:专业:班级:学号:姓名:订线内不要答题题目一二三四五六七八总分核分人题分3010103020100得分得分评卷人一、单项选择题(本大题共15小题,每小题2分,共30分)1.Struts2框架是应用在()A.表现层B.持久层C.业务逻辑层D.视图层2.在三层结构中,数据访问层承担的责任是()A.定义实体类B.数据的增删改查操作C.业务逻辑的描述D.页面展示和控制转发3.下面关于Hibernate的说法,错误的是()A.Hibernate是一个“对象-关系映射”的实现B.Hibernate是一种数据持久化技术C.Hibernate是JDBC的替代技术D.使用Hibernate可以简化持久化层的编码4.在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是()A.设置客户和订单关联的cascade属性为save-updateB.设置客户和订单关联的cascade属性为allC.设置多对一关联的inverse属性为trueD.设置多对一关联的inverse属性为false5.以下哪些不属于Session的方法()A.load()方法B.save()方法C.open()方法D.saveOrUpdate()方法6.Spring中实例化Bean有三种方法,下面哪个不是其中之一()A.构造器实例化B.静态工厂实例化C.工厂实例化D.类的实例化7.以下程序代码对Customer的name属性修改了两次:tx=session.beginTransaction();Customercustomer=(Customer)session.load(Customer.class,newLong(1));customer.setName(Jack);customer.setName(Mike);tx.commit();执行以上程序,Hibernate需要向数据库提交条update语句。()A.0B.1C.2D.38.set元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,则casecade属性应该取值为()A.noneB.saveC.deleteD.save-update9.对于以下程序,Customer对象在第行变为持久化状态。()Customercustomer=newCustomer();//①customer.setName(Tom);//②Sessionsession1=sessionFactory.openSession();//③Transactiontx1=session1.beginTransaction();//④session1.save(customer);//⑤tx1.commit();//⑥session1.close();//⑦A.①B.②C.③D.④E.⑤F.⑥G.⑦10.对于以下程序,Customer对象在第行变为游离状态。()Customercustomer=newCustomer();//①customer.setName(Tom);//②Sessionsession1=sessionFactory.openSession();//③第2页(共4页)装订线内不要答题年级:专业:班级:学号:姓名:Transactiontx1=session1.beginTransaction();//④session1.save(customer);//⑤tx1.commit();//⑥session1.close();//⑦A.①B.②C.③D.④E.⑤F.⑥G.⑦11.下面说法不正确的是()A.Spring依赖注入有两种方式,分别是设值注入和构造注入。B.Struts2是以WebWork为核心,采用拦截器的机制来处理用户的请求。C.Hibernate实现了对象关系映射,对JDBC进行了轻量级的对象封闭。D.mysql数据库的端口号是1433。12.下面关于Spring的说法正确的是()A.Spring是一个重量级的框架B.Spring是一个持久层的框架C.Spring是一个IOC和AOP容器D.Spring是一个入侵式的框架13.下面关于IOC的理解,正确的是()A.一定需要继承B.对象被动的接受依赖类C.对象主动的去找依赖类D.一定要用接口14.下面哪个选项可以实现Spring的自动装配功能。()A.byNameB.constructorC.byMethodD.byProperty15.实现AOP代理时,下面说法错误的是()A.Spring默认使用JDK动态代理B.Spring只能使用JDK动态代理C.Spring也可以使用CGLIB代理D.Spring也可以使用JDK动态代理得分评卷人二、填空题(本大题共10小题,每空1分,共10分)16.Struts2是在________________框架和WebWork框架上发展起来的。17.Session接口的flush()方法的作用是_____________和清理缓存。18.Hibernate支持缓存,它们分别是:一级缓存、_______________和查询缓存。19.Spring框架中,IOC的含义是______________________________________。20.当多个action…/标签中都使用到了相同的result,这时应该把result定义为_____________类型的结果。21.如果一个Struts2的Action类中存在多个方法时,可以使用_____________或使用method属性方式调用指定的方法。22.Hibernate中的分页使用了Query对象的_____________方法和setMaxResult()方法。23.Spring中对事务的管理使用了面向____________________编程技术。24.在web.xml文件中,struts2过滤器类是____________________。25.OGNL结构主要是指表达式,根对象和____________________。得分评卷人三、判断题(本大题共10小题,每题1分,共10分)26.对Struts2框架来说,用户的每次请求都要读取struts.xml文件。()27.Struts2框架是由监听器StrutsPrepareAndExecuteFilter来作为中央控制器的。()28.在Struts2框架中使用包来管理Action,包的作用和java中的类包是非常类似的,它主要用于管理一组业务功能相关的action。()29.在Action类中定义与请求参数同名的属性,便能够使struts2自动接收请求参数并赋予同名属性。()30.Struts2中请求的后缀名称只能是.action结尾,不能更改。()31.Struts2中在页面中要迭代集合可以用s:iterator标签。()32hibernate.xml文件关联实体类配置文件使用mapping标签实现。()33hibernate关联映射实现多对一关系,是通过在多的一方完成对一的关联。()34HQL语句是通过表名进行查询操作的。()35.搭建SSH框架时,可以将hibernate配置在Spring中实现。()得分评卷人四、简答题(本大题共5小题,每题6分,共30分)36.现在有学生类Student,属性为id,name,age,gender,现查询学号在4到10之间的学生实体,请写出相应的HQL语句。第3页(共4页)装订线内不要答题年级:专业:班级:学号:姓名:37.请简述在Hibernate有哪三种对象状态,以及它们的区别?38.请写出Person类(人类)与IDCard类(身份证类)的双向一对一主键关联映射关系。(注:只写出实体映射文件中的关联部分即可)39.请简述Struts2工作流程(注:画图说明也可以)。40.请简述Hibernate中Configuration、SessionFactory、Session、Query等接口的作用?得分评卷人五、程序设计题(本大题共6小题,共20分)41利用SSH框架实现的登录功能(1)数据库设计(4分)(2)struts.xml文件配置(3分)得分得分得分得分得分得分得分第4页(共4页)装订线内不要答题年级:专业:班级:学号:姓名:(3)hibernate.cfg.xml文件配置(3分)(4)applicationContext.xml文件配置(4分)(5)实体类(2分)(6)Action类(4分)得分得分得分得分