SSH综合试卷
ssh框架期末试题及答案
ssh框架期末试题及答案以下是基于题目给出的要求的文章正文:SSH框架期末试题及答案一、概述SSH框架是指由Struts、Spring和Hibernate三个开源框架组合而成的一种企业级Java应用开发架构。
它能够有效地整合Web层、业务层和持久层,提供了一种全面且高效的开发方式。
本文将为您呈现SSH框架期末试题及答案,帮助您复习和巩固对该框架的理解。
二、试题部分1. 简述SSH框架的组成和作用。
答:SSH框架由Struts、Spring和Hibernate三个开源框架组合而成。
Struts负责处理Web请求和页面跳转,Spring负责管理对象的创建和依赖注入,Hibernate负责数据库持久化操作。
SSH框架能够有效地整合这三个框架,提供了一种分层架构的开发方式,使得开发人员能够更加专注于业务逻辑的实现,提高了开发效率和代码的可维护性。
2. 请说明Struts、Spring和Hibernate框架各自的优势和适用场景。
答:Struts框架主要用于处理Web层的请求和页面跳转,其优势在于对MVC设计模式的良好支持和强大的页面标签库,适用于开发需要页面交互和跳转的Web应用。
Spring框架是一个轻量级的Java开发框架,可以方便地集成各种第三方框架和库。
它的优势在于依赖注入和面向切面编程的支持,简化了开发流程,提高了代码的可测试性和可维护性。
Spring框架适用于各种类型的Java应用开发。
Hibernate框架是一个强大而成熟的对象关系映射框架,提供了方便的CRUD操作和数据库事务管理。
它的优势在于使用面向对象的方式操作数据库,屏蔽了底层SQL语句的细节。
Hibernate框架适用于需要操作数据库的应用程序。
3. 请简述SSH框架的工作原理。
答:SSH框架的工作原理可以分为以下几个步骤:- 客户端发起HTTP请求,请求到达前端控制器(通常是Struts的ActionServlet)。
- 前端控制器根据请求URL的映射规则,将请求转发给具体的Action处理。
ssh试题
ssh试题测试卷(java)一、选择题(60分)1) 在Struts实现的MVC框架中,(a)类是包含了excute方法的控制器类,负责调用模型的方法,控制应用程序的流程。
a) Actionb) EJBc) ActionServletd) JSP2) 在基于Struts框架的Web应用中,下面关于Action 类的说法正确的是(c)。
a) Action类属于模型组件b) Action类主要用来完成实际的业务逻辑c) Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程d) 在Web应用启动时会自动加载所有的Action实例3) 在基于Struts框架的Web应用中,下面关于ActionForm Bean的说法正确的是(b)。
a) ActionForm Bean用来完成一些实际的业务逻辑b) Struts框架利用ActionForm Bean来进行视图和控制器之间表单数据的传递c) ActionForm负责调用模型的方法,更新模型的状态d) ActionForm Bean包含一些特殊的方法,reset()用于验证表单数据validate()将其属性重新设置为默认值4) 分析Action Bean的execute方法:public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {ActionErrors errors=new ActionErrors();if(!udao.check(loginform)){errors.add("login", newActionMessage("error.login"));returnmapping.findForward("failure");}}完成以上的功能,应在下划线上填入(c)。
ssh框架考试试题
Java 考试笔试试卷1) 1)下列关于package元素中说法正确的是()。
(选择一项)a) a)name 属性为必需的并且是唯一的,用来指定包得名称<.package name=””>属性为必须的并且是唯一的,用来指定包的名称b) b)extends属于是一个可选属性,定义了包的命名空间c) c)namespace是指要扩展的命名空间d) d)package元素中只能包含一个Action配置2) Hibernate 中实体类对象的状态不包括()。
(选择一项)a) 瞬时状态b) 持久状态c) 查询状态d) 游离状态3) 关于Web服务遵循的标准技术,下面错误的是()。
(选择一项)a) XMLb) SOAPc) WSDLd) HTML4) 在Oracle 数据库中在使用序列时,需要使用到序列的哪些伪列()。
(选择二项)a) nextvalb) nextvaluec) currvald) currvalue5) 以下关于Struts2的配置内容应该在哪个配置文件中编写()。
<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAdnExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</utl-pattern></filter-mapping>(选择一项)a) struts-defalut.xmlb) struts.xmlc) web.xmld) filter.xml6) 在Hibernate的ORM映射文件中包含:<class name=”er” table=”user”>,这一句中table属性的作用是().(选择一项)a) 指定表名b) 指定类名c) 指定数据库名d) 指定ORM映射文件名7) 以下选项中,关于依赖注入的描述正确的是()。
SSH框架面试题(自己+别人的试题)
(问答题+选择题(在55页))Java工程师(程序员)面题Struts,Spring,Hibernate三大框架1.Hibernate工作原理及为什么要用?原理:1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Session 4.创建事务Transation 5.持久化操作6.提交事务7.关闭Session 8.关闭SesstionFactory为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。
他很大程度的简化DAO层的编码工作3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。
4. hibernate的性能非常好,因为它是个轻量级框架。
映射的灵活性很出色。
它支持各种关系数据库,从一对一到多对多的各种复杂关系。
2.Hibernate是如何延迟加载?1. Hibernate2延迟加载实现:a)实体对象b)集合(Collection)2. Hibernate3 提供了属性的延迟加载功能当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。
3.Hibernate中怎样实现类之间的关系?(如:一对多、多对多的关系)类与类之间的关系主要体现在表与表之间的关系进行操作,它们都是对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many4.Struts1流程:1、客户端浏览器发出HTTP请求。
2、根据web.xml配置,该请求被ActionServlet接收。
3、根据struts-config.xml配置,ActionServlet先将请求中的参数填充到ActionForm中,然后ActionServlet再将请求发送到Action 进行处理。
SSH笔试题及答案
SSH笔试题和答案一.Hibernate工作原理及为什么要用?原理:1.读取并解析配置文件2.读取并解析映射信息,创建SessionFactory3.打开Sesssion4.创建事务Transation5.持久化操作6.提交事务7.关闭Session8.关闭SesstionFactory为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。
他很大程度的简化DAO层的编码工作3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。
4. hibernate的性能非常好,因为它是个轻量级框架。
映射的灵活性很出色。
它支持各种关系数据库,从一对一到多对多的各种复杂关系。
二.Hibernate是如何延迟加载?1. Hibernate2延迟加载实现:a)实体对象b)集合(Collection)2. Hibernate3 提供了属性的延迟加载功能当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。
三.Hibernate中怎样实现类之间的关系?(如:一对多、多对多的关系)类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many、四.说下Hibernate的缓存机制1. 内部缓存存在Hibernate中又叫一级缓存,属于应用事物级缓存2. 二级缓存:a) 应用及缓存b) 分布式缓存条件:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被系统频繁使用、非关键数据c) 第三方缓存的实现五.Hibernate的查询方式Sql、Criteria,object comptositionHql:1、属性查询2、参数查询、命名参数查询3、关联查询4、分页查询5、统计函数六.如何优化Hibernate?1.使用双向一对多关联,不使用单向一对多2.灵活使用单向一对多关联3.不用一对一,用多对一取代4.配置对象缓存,不使用集合缓存5.一对多集合使用Bag,多对多集合使用Set6. 继承类使用显式多态7. 表字段要少,表关联不要怕多,有二级缓存撑腰七.Struts工作机制?为什么要使用Struts?工作机制:Struts的工作流程:在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当ActionServlet接收到一个客户请求时,将执行如下流程.-(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;-(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;-(3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;-(4)如果ActionForm的validate()方法返回或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功;-(5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;-(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件;-(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;为什么要用:JSP、Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。
2012年SSH考试题目以及答案
四、简答题:2.有如下一段程序代码,请在代码下方空白处写出编号的每条语句的功能。
<s:property value=”pageBean.currentPage” /><s:property value=”pageBean.totalPage” />共<s:property value=”pageBean.totalPage” />页当前第<s:property value=”pageBean.currentPage” />页</br>共<s:property value=”pageBean.allRow” />条记录(1)<a href=”stu/listMyAricle.action?page=1”></a>(2)<a href=”stu/listMyAricle.action?page=<s:property value=”%{pageBean.currentPage-1}%”/>”></a>(3)<a href=”stu/listMyAricl e.action?page=<s:property value=”%{pageBean.currentPage+1}%”/>”></a>(4)<a href=”stu/listMyAricle.action?page=<s:property value=”%{pageBean.totalPage}%”/>”></a>答:1)点击这个超级链接会显示第一页的内容2) 点击这个超级链接会显示当前页的上一页的内容3)点击这个超级链接会显示当前页的下一页的内容4)点击这个超级链接会显示最后一页的内容3.有如下程序代码,请写出运行Test类后输出的结果//beans.xml文件部分配置信息<?xml version=”1.0” encoding=”UTF-8”?><beans><aop:aspect-autoproxy /><bean id=”user” class=”er” ><property name=”userid” value=”2012”></property><property name=”password” value=”信息工程学院”></property><property name=”username” value=”黄淮学院”></pro perty></bean></beans>//类Userpackage ;public class User {private int userid;private String username;private String password;//setter和getter方法省略}//测试类Testpackage ;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext; public class Text {public static void main(String[] args) {ApplicationContext ctx =new ClassPathXmlApplicationContext(“beans.xml”);User user = (User) ctx.getBean(“user”);System.out.println(user.getUserid());System.out.println(user.getUsername());System.out.println(user.getPassword());}}答:2012黄淮学院信息工程学院4.在类MyInter中有方法intercept,请说明intercept方法中每个行的代码作用。
SSH练习题aq
SSH练习题(一)5.在WEB服务器遇到了内部异常,不能完成客户的请求时,应向客户返回包含状态代码( E )的响应消息。
A.100 B. 200 C. 300 D. 400 E. 5006.当WEB服务器通知客户端进行用户请求的重定向和转发时,会在响应消息中使用响应标题( A )。
A.Location B. Server C. Expires D. Content-Type7. 关于Tomcat,下列说法正确的有(AC )。
(多选)A.Tomcat 4.0是Servlet2.3和JSP1.2规范的官方参考实现B.Tomcat服务器的优点是使用简单,并且支持EJB C.JBuilder9.0提供的默认的测试服务器是Tomcat D.Tomcat是Apache Jakarta项目开发组开发的基于GPL自由软件协议的自由软件8.关于JA V A Web服务器的Servlet容器,正确的说法有(D )A.Servlet 容器是一种数据库,可以存储一些JSP页面所需配置信息B.Servlet容器负责分析客户请求的是动态网页还是静态网页C.Servlet容器是Web服务器的一个组件,一般在服务器启动时进行初始化D.Web应用的运行的环境是Servlet容器根据配置文件提供的9.当浏览器访问位于Web服务器上的某Servlet时,(C )负责将请求包装成Servlet可以处理ServletRequest对象。
A.浏览器 B.Web服务器的HTTP引擎 C.Web服务器的Servlet容器 D.JA V A虚拟机11、派生HttpServlet的Servlet子类的doGet方法通常可以抛出(BD )异常。
(多选)A、InterruptExceptionB、IOExceptionC、NullPontterExceptionD、ServletException12、Tomcat服务器中部署了2个Web应用:Selling和Stocking。
ssh框架期末考试题及答案
ssh框架期末考试题及答案一、选择题(每题2分,共20分)1. SSH框架中,S代表的是:A. SpringB. StrutsC. HibernateD. SpringMVC答案:A2. 在Struts2框架中,OGNL表达式中获取参数值的正确方式是:A. ${param.paramName}B. ${paramName}C. ${request.paramName}D. ${session.paramName}答案:A3. Hibernate中,以下哪个接口用于获取当前会话的持久化对象?A. SessionB. TransactionC. QueryD. Criteria答案:A4. Spring框架中,以下哪个注解用于声明一个Bean?A. @AutowiredB. @ServiceC. @ComponentD. @Repository答案:C5. 在Spring MVC中,以下哪个注解用于映射请求到对应的处理器方法?A. @ControllerB. @RequestMappingC. @ResponseBodyD. @PathVariable答案:B6. Struts2中,以下哪个标签用于遍历集合?A. <s:iterator>B. <s:property>C. <s:if>D. <s:else>答案:A7. Hibernate中,以下哪个是事务管理的接口?A. SessionB. TransactionC. QueryD. Criteria答案:B8. Spring框架中,以下哪个注解用于自动注入集合类型的Bean?A. @AutowiredB. @QualifierC. @ResourceD. @Inject答案:A9. 在Struts2框架中,以下哪个拦截器用于处理表单验证?A. TimerInterceptorB. PrepareInterceptorC. ValidationInterceptorD. WorkflowInterceptor答案:C10. Spring MVC中,以下哪个注解用于将请求参数绑定到控制器方法的参数上?A. @RequestParamB. @PathVariableC. @RequestBodyD. @RequestHeader答案:A二、简答题(每题5分,共20分)1. 简述SSH框架的组成及其各自的作用。
ssh考试题
ssh考试题Secure Shell(SSH)是一种用于安全远程登录和文件传输的网络协议。
它提供了一种加密的连接方式,可以有效地保护敏感数据的传输。
SSH协议常被用于远程服务器的管理和维护,以及在互联网上进行安全通信。
本文将介绍SSH考试题,包括SSH的基本概念、使用方法和一些常见的考试题目。
一、SSH的基本概念SSH是一种用于安全登录远程计算机的网络协议。
它使用对称加密、非对称加密和哈希算法来保护远程登录时的数据传输安全。
与传统的Telnet协议相比,SSH协议能够提供更高层次的安全保障。
SSH的工作原理是在客户端和服务器之间建立一条加密通道,以确保数据在传输过程中不被窃取或篡改。
在登录时,客户端会使用私钥对数据进行加密,而服务器会使用公钥进行解密。
这种非对称加密的方式,能够有效地防止黑客窃取用户的登录信息。
二、SSH的使用方法1. 客户端软件安装与配置在使用SSH之前,需要在本地计算机上安装相应的SSH客户端软件。
例如,在Windows操作系统上可以使用PuTTY或Xshell,而在Mac操作系统上可以使用Terminal。
安装完成后,需要配置SSH客户端连接的目标主机IP地址、用户名以及端口号(默认为22)。
此外,还可以选择是否使用密钥文件进行身份验证,以提高安全性。
2. 连接远程主机打开SSH客户端软件后,输入目标主机的IP地址、用户名和密码(或密钥文件),点击连接即可与远程主机建立安全连接。
在连接时,客户端会与服务器进行身份验证。
如果是首次连接,客户端会提示用户接受服务器的公钥指纹。
为保证安全性,用户应核对指纹是否正确,然后确认。
3. 远程登录和操作成功连接到远程主机后,用户可以进行远程登录和操作。
可以执行命令、上传和下载文件等操作。
在进行操作时,SSH会自动对传输的数据进行加密。
这样,即使在不安全的网络环境下,黑客也无法获取用户的敏感信息。
三、SSH考试题目1. 什么是SSH协议?它的作用是什么?2. 请列举使用SSH协议登录远程主机的步骤。
ssh试题
ssh试题一、选择题(共60分,每题2分,可多选)1.struts2框架是通过strutsprepareandexecutefilter拦截用户的请求从而引发自身的初始化和执行的,strutsprepareandexecutefilter是:c(a)一个特殊的servlet(b)拦截器(c)过滤器(d)转发器2.关于struts2框架,下面哪些观点就是恰当的?bc(a)struts2框架可以瓦解web容器运转;(b)struts2框架的运转环境就是web容器;3.struts2默认的框架级配置文件是:d(a)web.xml(b)struts.xml(c)struts-plugin.xml(d)struts-default.xml4.struts2框架采用default.properties文件定义运转时的参数,所定义的参数可以在struts.xml文件中全面覆盖,如果全面覆盖应当采用什么标签?c(a)(b)(c)(d)5.关于action类,下面哪些说法是正确的?bd(a)定义action类必须实现action接口;(b)在action中可以定义任意的跳转字符串;(c)在action中必须定义execute方法;(b)在struts.xml文件中配置action类;7.关于actionsupport类,下面恰当的观点就是:bd(a)撰写action类必须承继actionsupport类;(b)actionsupport类,提供了访问国际化消息资源文件的方法;(c)actionsupport类提供了struts2框架的内置验证器;(d)利用actionsupport类的validate方法可以实行自定义检验;8.规范用户提交数据的合理方案是:(c)d(a)实施javascript验证;(b)实施struts2的内置验证;(c)实施ajax技术的验证;(d)实行javascript检验和struts2的服务器端检验;9.现有程序control.loginaction.java和control.registaction.java以及login.jsp和reigist.jsp页面,在struts.xml中有配置如下:{2}.jsp1则下面恰当的阐释就是:d(a)通过请求loginaction访问regist.jsp页面;(b)通过请求login.jsp页面访问loginaction;(c)通过请求regist.jsp页面访问loginaction;(d)通过请求loginaction 访问login.jsp页面;10.针对一个action的struts.xml文件中,布局如下:output.jsp下列哪些说法是正确的?ac(a)result标签的name属性就是\(b)result标签的type属性就是就是none;(c)result标签的type属性就是dispatcher(d)result标签的name属性就是\;11.将action中的属性,以json格式发送到客户端浏览器,需要做的是:bd(a)编写jsp页面输出json字符串;(b)导入struts2-json-plugin插件(c)必须在action中展开json格式的处置;(d)action的纸盒布局须要承继\12.struts2的action需要向客户端浏览器发送字节流,正确的做法是:ad(a)在action中设置inputstream类型的属性input;(b)在action中设置outputstream类型的属性;(c)在action的配置文件中配置跳转的jsp页面;。
SSH框架测试试卷
三、单项选择(每小题 分,共 分). ✞设计模式的目的是( )✌:使程序结构更清晰:使程序更好维护:保证视图和模型的隔离:在逻辑上将视图、模型和控制器分开.以下关于 ☟框架说法正确的是( )✌: ♦❒◆♦♦属于 ♏♌层,负责处理业务逻辑:☟♓♌♏❒⏹♋♦♏属于 业务层,可以对数据库进行操作: ☐❒♓⏹♑属于持久层,是对 ✞设计模式的实现:以上说法都不对.以下选项,不在 ♦❒◆♦♦的配置文件中配置的是( )✌:☞☐❒❍ ♏♋⏹配置信息:✌♍♦♓☐⏹转发路径:✌♍♦♓☐⏹♏❒❖●♏♦配置信息: ♦❒◆♦♦引用的资源文件.下面关于 ♦❒◆♦♦报错机制说法正确的是(✌)✌:强制使用国际化:错误信息保存在♦♏♦♦♓☐⏹中:使用 ♒♦❍●♏⌧♍♏☐♦♓☐⏹标签显示错误信息:也可以使用 ♒♦❍●❍♏♦♦♋♑♏♦显示错误信息.在三层结构中,数据访问层承担的责任是( )✌:定义实体类:数据的增删改查操作:业务逻辑的描述:页面展示和控制转发.下面关于☟♓♌♏❒⏹♋♦♏的说法,错误的是( )✌:☟♓♌♏❒⏹♋♦♏是一个“对象—关系映射”的实现:☟♓♌♏❒⏹♋♦♏是一种数据持久化技术:☟♓♌♏❒⏹♋♦♏是☺ 的替代技术:使用☟♓♌♏❒⏹♋♦♏可以简化持久化层的编码.在☟♓♌♏❒⏹♋♦♏关系映射配置中,♓⏹❖♏❒♦♏属性的含义是( )✌:定义在 ☐⏹♏♦☐❍♋⏹⍓节点上,声明要负责关联的维护 :声明在 ♦♏♦节点上,声明要对方负责关联的维护:定义在 ☐⏹♏♦☐❍♋⏹⍓节点上,声明对方要负责关联的维护 :声明在 ♦♏♦节点上,声明要负责关联的维护.关于 ☐❒♓⏹♑的说法错误的是( )✌:通过♦♏♦♦♏❒方法实现依赖注入:对☟♓♌♏❒⏹♋♦♏提供了支持,可简化☟♓♌♏❒⏹♋♦♏编码:通过✌可以轻松与☟♓♌♏❒⏹♋♦♏集成:通过✌实现了声明式事务管理.关于 ☐❒♓⏹♑ ✌,下面说法错误的是( )✌:支持前置通知、后置通知、环绕通知:采用代理的方式实现:与“依赖注入”实现紧密结合:在 ☐❒♓⏹♑以前的版本中通过 ♋☐☐♍☐⏹♐♓♑、 ♋☐☐☐☐♓⏹♦♍◆♦和 ♋☐☐♋♎❖♓♦☐❒配置.下面关于“依赖注入”的说法,错误的是(✌)✌:需要定义大量接口,增加了编码复杂度:将组件间的依赖关系采取配置文件的方式管理,而不是硬编码在代码中 :降低了组件间的耦合,使程序更容易维护和升级:促进了“面向接口”编程,使构建大规模程序更轻松四、简单题(每小题 分,共 分).简述♦♦❒◆♦♦的工作原理 .什么是 ✍它主要解决什么问题?.简述 ☐❒♓⏹♑的原理和优点?。
(完整word版)SSH复习题
选择题1、下面哪一个不是框架(D)。
A. SpringB. StrutsC. HibernateD. JSP2、下面是框架的是(D)。
A. JSPB. Struts标签库C. Criteria查询D. Spring3、在三层结构中,Struts2承担的责任是(D )。
A. 定义实体类B. 数据的增删改查操作C. 业务逻辑的描述D. 页面展示和控制转发4、在三层结构中,Hibernate承担的任务是(A )。
A.数据的持久化操作 B. 实体类的定义C. 业务逻辑的描述D. 页面的显示与控制转发5、下面信息不在Struts2配置文件中配置的是(B )。
A. Form Bean配置信息B. Spring声明式事务C. Action转发路径D. Struts2引用的资源文件6、在struts 实现的框架中,(B )类包含了excute方法的控制器类,负责调用模型的方法,控制应用程序的流程。
A.Ajax B.Action C.Form D.Method7、下面关于Hibernate的说法,错误的是(C )。
A. Hibernate是一个“对象-关系映射”的实现B. Hibernate是一种数据持久化技术C. Hibernate是JDBC的替代技术D. 使用Hibernate可以简化持久化层的编码8、下列说法中错误的是(C )。
A.使用通配符可以优化action的配置B.约定优于配置。
约定的如果好,可以使action配置非常的简洁C.如果Action中存在多个方法时,只能使用method属性指定调用方法D.在struts2中超级链接通常都采用绝对路径,而不使用相对路径,这样便于链接的实现9、下列说法中错误的是(D )。
A.从值栈中取值用value=“参数名”,参数名是action中的参数B.从actioncontext中取值用#parameters.参数名,参数名是struts中的参数C.在客户端跳转时一次request只有一个valueStackD.在客户端跳转时一次request可以有多个valueStack10、和SQL相比,HQL有哪些优点(C )。
SSH框架技术试卷+答案
课程考试试卷一、单项选择题(每题1分,共30分)___________。
A.<s:a > B.<action> C.<html> D.<input>2.在action元素中指定Action类调用方法的属性是___________。
A.Name B.Method C.class D.result 3.Struts2框架正则表达式校验器的名字是___________。
A.interceptor B.error C.regex D.expression 4. Action结果执行类型设置为跳转到其它的Action,结果类型值是________。
A.chain B.redirect C.dispatcher D.redirectAction 5.在Struts2框架的配置文件中,以下不属于Action的属性的是___________。
A.name B.class C.method D.result6.在Struts2框架的配置文件中,以下属于package的属性的是___________。
A.action B.namespace C.success D.result 7.struts中数据验证失败时,除了可以使用<s:fielderror>标签之外,还可以通过________标签显示错误信息。
A.<s:text> B.<s:error> C.<s:faild> D.<s:property> 8. 下面属于MVC设计模式的是_______。
A.逻辑层 B.IO流层 C.数据层 D.视图层9. 如果需要在页面中输出某变量的值,则在Struts中采用___________标签输出该变量的值。
A.param B.if C.bean D.property10. 如下代码说法正确的是________。
<s:iterator id=”teacher” value=”#arr.teacherList” status=”teacher”><s:if test=”teacher.odd”><tr bgcolor=”blue”></tr></s:if><s:else><tr bgcolor=”black”></tr></s: else ></s:iterator>A.奇数行为蓝色 B.奇数行为红色 C.偶数行为黄色 D.偶数行为蓝色11.假设在application中存在名为name的属性,通过OGNL访问该属性,正确的代码是_________。
SSH综合试卷
SSH学习增强练习课程名称: SSH学习增强练习考试时间80分钟(闭卷■)选择题1.开发struts2 web项目,需要导入哪些jar包(选2项)A 必须导入struts2 解压lib下所有jar包B 只需要导入struts2解压app/struts2_blank.war中的jar包就可以C 如果进行注解开发,导入struts2解压app/struts2_blank.war中的jar包就可以D 如果进行注解开发,还必须导入convention的插件jar包2.下面关于struts2 MVC说法正确的是?(选2项)A.Struts2 是一个基于MVC模式的web层框架B.Struts2中核心控制器是ActionServletC.Struts2中模型是ActionD.Struts2中控制器是Filter 和ActionE.Struts2的视图必须用JSP3.关于Struts2 Action说法下面不正确的是A.用户编写的Action可以是POJO类B.用户编写的Action可以实现Action接口C.用户编写的Action 可以继承ActionSupportD.Action中必须提供execute方法E.Action提供的业务方法必须public修饰,String类型返回值,无参数的4.如果客户端请求路径http://localhost:8080/struts2_exec/user_add.action 要执行UserAction类中的add方法,下面的配置哪些是正确的(选2项)A.<action name=”user_add” class=”…UserAction” >B.<action name=”user_add” class=”…UserAction” method=”add”>C.<action name=”user_add” class=”…UserAction” parameter=”add”>D.<action name=”user_*” class=”…UserAction” method=”{0}”>E.<action name=”user_*” class=”…UserAction” method=”{1}”>5.下面关于Struts2中result type说法不正确的是?A.如果要将请求从一个Action转发给另一个Action 可以使用chain 结果集B.如果要将请求重定向给一个JSP,可以使用dispatcher 结果集C.如果要将请求从一个Action重定向到另一个Action 可以使用redirectAction结果集D.如果要将请求从一个Action重定向到JSP,可以使用redirect结果集E.进行文件下载时可以使用stream结果集6.如果客户端提交请求路径为http://localhost:8080/struts2/hello.action?name=”itcast”, 下面在Action中要接收name请求参数,哪个写法是正确的?(选2项)A.public class HelloAction {private String name;public void setName(String name){ = name;}}B.public class HelloAction {private User user ;public void setUser(User user){er = user;}}public class User {private String name;public void setName(String name){ = name;}}C.public class HelloAction implements ModelDriven<User>{private User user ;public User getModel(){return er;}}public class User {private String name;public void setName(String name){ = name;}}D.public class HelloAction implements ModelDriven<User>{private User user = new User() ;public User getModel(){return er;}}public class User {private String name;public void setName(String name){ = name;}}7.关于自定义类型转换器下面说法不正确的是?(选2项)A.向Action封装请求参数,是由ParametersInterceptor完成的B.进行封装参数时,必须要自定义类型转换器C.自定义类型转换器,如果继承DefaultTypeConverter , 覆盖convertValue方法时,只需要实现String向目标类型的转换D.自定义类型转换器后需要注册,可以在Action所在路径编写Action类名-conversion.properties ,配置Action中属性名= 类型转换器E.自定义类型转换器也可以全局注册,在src下创建xwork-conversion.properties ,配置目标类型= 转换器F. 如果类型转换出错后,会跳转到INPUT对应视图,可以通过<s:fieldError> 显示错误信息8.如果需要对Action封装请求参数,进行校验下面哪些说法正确A.可以在Action中添加validate方法完成校验,Action可以是POJO类B.可以在Action所在包编写Action类名-validation.xml 对Action中所有业务方法进行校验C.如果要对Action中某个指定的业务方法进行校验,可以在Action所在包,编写Action类名-方法名-validation.xmlD.在Action中手工校验失败后,通过addFieldError设置错误信息,但Action中是无法读取国际化文件的9.下面关于Struts2 中Action 中设置信息说法不正确的是A.在开发中Action 将一个文本信息传递给JSP 显示,通常可以使用addActionError、addActionMessage 、addFieldError 三个方法,此时Action可以不继承ActionSupportB.addFieldError 主要存放字段错误信息,页面通过<s:fielderror> 显示C.addActionError 主要存放Action错误信息页面通过<s:actionerror>显示D.addActionMessage 可以存放Action普通信息,页面通过<s:actionmessage> 显示10.关于struts2 国际化信息文件下面哪些说法是正确的?(选2项)A.国际化信息文件,必须放到src根目录,不能放到package中,放到src根目录中国际化信息文件不需要配置,就可以在所有Action中使用B.可以在Action所在包,编写Action类名.properties ,无需配置就可对当前Action 生效C.可以在Action 所在包,创建package.properties ,无需配置就可对当前包所有Action生效D.国际化信息文件在任何package中,都可以通过在struts2.xml 对国际化信息文件进行配置struts.custom.i18n.resources ,使其对所有Action 生效11.关于struts2 拦截器说法不正确的是A.Struts2内部使用了很多内置拦截器,用于在Action执行前后加入某些操作B.访问每个Action 必须执行defaultStack 中所有拦截器C.如果在<action>元素中指定<interceptor-ref> 那么默认defaultStack 就不会得到执行D.自定义拦截器可以实现很多功能,比如权限控制,性能监控E.Struts2 中拦截器实现责任链模式12.关于值栈ValueStack 下面哪些说法不正确A.ValueStack值栈对象的生命周期就是request生命周期,request对象销毁后值栈数据将不存在B.获得值栈对象引用可以通过两种方法第一种ServletActionContext.getRequest().getAttribute("struts.valueStack");第二种ActionContext.getContext().getValueStack();C.值栈中包含两个部分,一个CompoundRoot 和一个OgnlContext , CompoundRoot是一个ArrayList 结构,OgnlContext 是一个Map 结构D.OgnlContext 对内置了很多常用web对象引用,通过parameters 、request、session、application、attr,可以直接获取Servlet 对象E.每次请求Action ,Action对象本身都会被push到值栈的root 中13.下面关于向值栈存放数据说法不正确的是?A.在Action建立成员变量,并提供get方法,该数据就会随Action 会被自动压入值栈rootB.可以通过调用valueStack 提供push 方法将一个对象压入值栈的root中C.可以调用valueStack的set (key,Object) 方法将一个对象,存入值栈OgnlContext Map中D.可以调用valueStack.getCompoundRoot().add(object) 方法,将数据存入值栈root中E.可以调用valueStack.getOgnlContext().put(key,object) 方法将数据存入值栈OgnlContextMap中14.如果Action 如下定义public class HelloAction {private String name =”itcast”;public String getName(){return ;}…}在页面要取得name的值,下面哪些写法是不正确的?A.<s:property value=”name” />B.<s:property value=”#name” />C.<s:property value=”#” />D.<s:property value=”#” />E.${name}15.阅读下面代码public class UserAction {private List<User> users;public List<User> getUsers(){return ers;}public String execute(){users = …. 从数据库查询出所有用户…}}public class User {private String name;private String city ;// 提供getter方法}要在结果JSP中对users数据进行遍历显示,下面哪些写法不正确A.<s:iterator value=”users” var=”user”><s:property value=”name”/><s:property value=”city” /></s:iteratorB.<s:iterator value=”#ers” var=”user”><s:property value=”#name”/><s:property value=”#city” /></s:iteratorC.<s:iterator value=”#ers” var=”user”><s:property value=”#”/><s:property value=”#user.city” /></s:iteratorD.<s:iterator value=”users” var=”user”><s:property value=”name”/><s:property value=”city” /></s:iterator>16.下面关于Hibernate框架说法不正确的是?A.Hibernate是一个完全ORM框架,封装了底层数据库操作,不支持SQL语句B.Hibernate实现了JPA接口规范C.Hibernate通过操作对象方式,间接操作数据库D.Hibernate实体类和数据表之间需要hbm映射配置、或者注解映射配置17.一般情况下,关系数据模型与对象模型之间有哪些匹配关系,说法不正确的是?A.表对应类B.记录对应对象C.表的字段对应类的属性D.数据库对应Session18.以下关于SessionFactory的说法哪些正确?A.对于每个数据库事务,应该创建一个SessionFactory对象B.一个SessionFactory对象对应多个数据库存储源C.SessionFactory是重量级的对象,不应该随意创建。
SSH框架技术试卷+答案
面属于MVC设计模式的是。
B.IO流层C.数据层D.视Struts中采用___________.ifC.beanD.property下代码说法正确的是。
”teacher”value=””status=””>”teacher.odd”><trbgcolor=”blue”></tr><trbgcolor=”black”></tr>B.奇数行为红色D.偶数行为蓝色application中存在名为的属性,通过OGNL访问该属性,_________。
.#C..${name}Action中访问rquest中__________接口。
.ApplicationAw.ParameterAwareD.SessionAstruts.xml文件中需使用的元素。
.IncludeC.packageD.filterchainMVC框架都需要Web应用Struts2需要加载的是_________。
.StrutsPrepareAndExecuteFilterC. Struts.xmlD.struts2.xml 15.将使用的拦截器定义到共有的状态下来实现统一管理,称为_________。
A.拦截器组B.拦截器队C.拦截器链D.拦截器栈16.Struts2标签库中迭代标签的status属性的______方法是判断当前元素的索引是否是偶数。
A.isOddB.isLastC.isFirstD.i sEven17.__________文件主要负责管理应用中的Action映射,以及该Action 包含的Result定义等。
A. Web.xmlB.StrutsPrepareAndExecuteFilt erC. struts.xmlD.struts2.xml 18.Struts2框架由3个部分组成:________、业务控制器和用户实现的业务逻辑组件。
A.核心控制器FilterDispatcher B.模型类C.拦截器D.JSP19.根据__________配置,浏览器发出HTTP请求被FilterDispatcher接收。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SSH学习增强练习课程名称: SSH学习增强练习考试时间80分钟(闭卷■)选择题1.开发struts2 web项目,需要导入哪些jar包(选2项)A 必须导入struts2 解压lib下所有jar包B 只需要导入struts2解压app/struts2_blank.war中的jar包就可以C 如果进行注解开发,导入struts2解压app/struts2_blank.war中的jar包就可以D 如果进行注解开发,还必须导入convention的插件jar包2.下面关于struts2 MVC说法正确的是?(选2项)A.Struts2 是一个基于MVC模式的web层框架B.Struts2中核心控制器是ActionServletC.Struts2中模型是ActionD.Struts2中控制器是Filter 和ActionE.Struts2的视图必须用JSP3.关于Struts2 Action说法下面不正确的是A.用户编写的Action可以是POJO类B.用户编写的Action可以实现Action接口C.用户编写的Action 可以继承ActionSupportD.Action中必须提供execute方法E.Action提供的业务方法必须public修饰,String类型返回值,无参数的4.如果客户端请求路径http://localhost:8080/struts2_exec/user_add.action 要执行UserAction类中的add方法,下面的配置哪些是正确的(选2项)A.<action name=”user_add” class=”…UserAction” >B.<action name=”user_add” class=”…UserAction” method=”add”>C.<action name=”user_add” class=”…UserAction” parameter=”add”>D.<action name=”user_*” class=”…UserAction” method=”{0}”>E.<action name=”user_*” class=”…UserAction” method=”{1}”>5.下面关于Struts2中result type说法不正确的是?A.如果要将请求从一个Action转发给另一个Action 可以使用chain 结果集B.如果要将请求重定向给一个JSP,可以使用dispatcher 结果集C.如果要将请求从一个Action重定向到另一个Action 可以使用redirectAction结果集D.如果要将请求从一个Action重定向到JSP,可以使用redirect结果集E.进行文件下载时可以使用stream结果集6.如果客户端提交请求路径为http://localhost:8080/struts2/hello.action?name=”itcast”, 下面在Action中要接收name请求参数,哪个写法是正确的?(选2项)A.public class HelloAction {private String name;public void setName(String name){ = name;}}B.public class HelloAction {private User user ;public void setUser(User user){er = user;}}public class User {private String name;public void setName(String name){ = name;}}C.public class HelloAction implements ModelDriven<User>{private User user ;public User getModel(){return er;}}public class User {private String name;public void setName(String name){ = name;}}D.public class HelloAction implements ModelDriven<User>{private User user = new User() ;public User getModel(){return er;}}public class User {private String name;public void setName(String name){ = name;}}7.关于自定义类型转换器下面说法不正确的是?(选2项)A.向Action封装请求参数,是由ParametersInterceptor完成的B.进行封装参数时,必须要自定义类型转换器C.自定义类型转换器,如果继承DefaultTypeConverter , 覆盖convertValue方法时,只需要实现String向目标类型的转换D.自定义类型转换器后需要注册,可以在Action所在路径编写Action类名-conversion.properties ,配置Action中属性名= 类型转换器E.自定义类型转换器也可以全局注册,在src下创建xwork-conversion.properties ,配置目标类型= 转换器F. 如果类型转换出错后,会跳转到INPUT对应视图,可以通过<s:fieldError> 显示错误信息8.如果需要对Action封装请求参数,进行校验下面哪些说法正确A.可以在Action中添加validate方法完成校验,Action可以是POJO类B.可以在Action所在包编写Action类名-validation.xml 对Action中所有业务方法进行校验C.如果要对Action中某个指定的业务方法进行校验,可以在Action所在包,编写Action类名-方法名-validation.xmlD.在Action中手工校验失败后,通过addFieldError设置错误信息,但Action中是无法读取国际化文件的9.下面关于Struts2 中Action 中设置信息说法不正确的是A.在开发中Action 将一个文本信息传递给JSP 显示,通常可以使用addActionError、addActionMessage 、addFieldError 三个方法,此时Action可以不继承ActionSupportB.addFieldError 主要存放字段错误信息,页面通过<s:fielderror> 显示C.addActionError 主要存放Action错误信息页面通过<s:actionerror>显示D.addActionMessage 可以存放Action普通信息,页面通过<s:actionmessage> 显示10.关于struts2 国际化信息文件下面哪些说法是正确的?(选2项)A.国际化信息文件,必须放到src根目录,不能放到package中,放到src根目录中国际化信息文件不需要配置,就可以在所有Action中使用B.可以在Action所在包,编写Action类名.properties ,无需配置就可对当前Action 生效C.可以在Action 所在包,创建package.properties ,无需配置就可对当前包所有Action生效D.国际化信息文件在任何package中,都可以通过在struts2.xml 对国际化信息文件进行配置struts.custom.i18n.resources ,使其对所有Action 生效11.关于struts2 拦截器说法不正确的是A.Struts2内部使用了很多内置拦截器,用于在Action执行前后加入某些操作B.访问每个Action 必须执行defaultStack 中所有拦截器C.如果在<action>元素中指定<interceptor-ref> 那么默认defaultStack 就不会得到执行D.自定义拦截器可以实现很多功能,比如权限控制,性能监控E.Struts2 中拦截器实现责任链模式12.关于值栈ValueStack 下面哪些说法不正确A.ValueStack值栈对象的生命周期就是request生命周期,request对象销毁后值栈数据将不存在B.获得值栈对象引用可以通过两种方法第一种ServletActionContext.getRequest().getAttribute("struts.valueStack");第二种ActionContext.getContext().getValueStack();C.值栈中包含两个部分,一个CompoundRoot 和一个OgnlContext , CompoundRoot是一个ArrayList 结构,OgnlContext 是一个Map 结构D.OgnlContext 对内置了很多常用web对象引用,通过parameters 、request、session、application、attr,可以直接获取Servlet 对象E.每次请求Action ,Action对象本身都会被push到值栈的root 中13.下面关于向值栈存放数据说法不正确的是?A.在Action建立成员变量,并提供get方法,该数据就会随Action 会被自动压入值栈rootB.可以通过调用valueStack 提供push 方法将一个对象压入值栈的root中C.可以调用valueStack的set (key,Object) 方法将一个对象,存入值栈OgnlContext Map中D.可以调用valueStack.getCompoundRoot().add(object) 方法,将数据存入值栈root中E.可以调用valueStack.getOgnlContext().put(key,object) 方法将数据存入值栈OgnlContextMap中14.如果Action 如下定义public class HelloAction {private String name =”itcast”;public String getName(){return ;}…}在页面要取得name的值,下面哪些写法是不正确的?A.<s:property value=”name” />B.<s:property value=”#name” />C.<s:property value=”#” />D.<s:property value=”#” />E.${name}15.阅读下面代码public class UserAction {private List<User> users;public List<User> getUsers(){return ers;}public String execute(){users = …. 从数据库查询出所有用户…}}public class User {private String name;private String city ;// 提供getter方法}要在结果JSP中对users数据进行遍历显示,下面哪些写法不正确A.<s:iterator value=”users” var=”user”><s:property value=”name”/><s:property value=”city” /></s:iteratorB.<s:iterator value=”#ers” var=”user”><s:property value=”#name”/><s:property value=”#city” /></s:iteratorC.<s:iterator value=”#ers” var=”user”><s:property value=”#”/><s:property value=”#user.city” /></s:iteratorD.<s:iterator value=”users” var=”user”><s:property value=”name”/><s:property value=”city” /></s:iterator>16.下面关于Hibernate框架说法不正确的是?A.Hibernate是一个完全ORM框架,封装了底层数据库操作,不支持SQL语句B.Hibernate实现了JPA接口规范C.Hibernate通过操作对象方式,间接操作数据库D.Hibernate实体类和数据表之间需要hbm映射配置、或者注解映射配置17.一般情况下,关系数据模型与对象模型之间有哪些匹配关系,说法不正确的是?A.表对应类B.记录对应对象C.表的字段对应类的属性D.数据库对应Session18.以下关于SessionFactory的说法哪些正确?A.对于每个数据库事务,应该创建一个SessionFactory对象B.一个SessionFactory对象对应多个数据库存储源C.SessionFactory是重量级的对象,不应该随意创建。