Struts 2作业
1.简述什么事MVC?
MVC 的全称为model-view-controller(模型-视图-控制器)。MVC 是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护。使用MVC 开发出来的应用程序一般包括以下几块内容:
·控制器(Controller):控制器类处理客户端向Web 应用程序发出的请求,获取数据,
并指定返回给客户端,用来显示处理结果的视图。
·模型(Model):模型类代表了应用程序的数据,这些数据通常具有一个数据验证逻
辑,用来使得这些数据必须符合业务逻辑。
·视图(View):视图类是Web 应用程序中用来生成并显示HTML 格式的服务器端对客
户端请求的响应结果的模板文件
2.Struts 2以(webWork )为核心,采用(拦截器)的机制来处理用户的
请求。
3.简述一个请求在Struts 2框架中的处理流程,请按自己对框架的理解叙述。
1-用户提交自己的请求-2-由web.xml拦截,转发到action进行处理;-3- Struts.xml根据相应的action配置,调用相应的方法来处理,并根据结果转发到不同的页面;
4.不属于Action接口中定义的字符串常量是()?
A)SUCCESS
B)FAILURE
C)ERROR
D)INPUT
5.资源文件的后缀名为()?
A)txt
B)doc
C)property
D)properties
6.在JSP页面中可以通过Struts 2提供的()标签来输出国际化信息。
A)
B)
C)
D)
7.以文字过滤拦截器为例,简述拦截器的使用步骤。
-1 定义自己的拦截器实例,并继承相应的拦截器类;
-2 在struts.xml中配置拦截器。使用
-3 用户发送添加评论的请求,由struts.xml捕获,并交由拦截器处理;
-4 拦截器根据定义的方法进行校验,放回相应的执行结果,实现文字屏蔽效果。
8.在同一个系统中配置多个拦截器,试说明它们的执行顺序。
一般来说:先配置的拦截器,会先获得执行的机会,但是实际情况不是这样。execute()
方法执行之前,配置在前面的拦截器,会先对用户的请求起作用。execute()方法执行之后,配置在后面的拦截器,会先对用户的请求起作用。(两头向中间靠拢的执行)
9.请简述struts2中输入校验的几种方式。
客户端校验:在客户端用过使用javascript脚本对用户输入的数据进行校验;
服务器校验:在服务器端对数据进行校验。
10.使用配置方式实现输入校验有哪两种方式?它们的命名规则是?如果同时配
置了两种方式,寻找校验文件的顺序是?
-1 重写validate()方法实现和validateXxx()方法实现
-2 命名规则:必须以validate开头
-3 顺序:当被请求的action方法处理逻辑还有相应的validateXxx()方法。那么该校验方法将在validate()校验之前进行
11.校验器配置风格有哪两种?举例解释使用标签的含义。
-1 一种是字段优先,称为字段校验器风格;
一种是校验器优先,称为非字段校验器风格。
-2 字段校验器:以
Param指定传人参数。
12.Struts 2哪些内置校验器支持客户端校验?以及如何通过Struts 2标签自动生
成客户端校验代码?
必填校验器(required)
必填字符串校验器(requiredstring)
字符串长度校验器(stringlength)
整数校验器(int)
日期校验器(date)
邮件地址格式校验器(email)
网址格式校验器(url)
转换校验器(conversion)
表达式校验器(expression)
字段表达式校验器(fieldexpression)
正则表达式校验器(regex)
13.自定义校验器必须实现哪个接口?注册校验器的配置文件应如何命名?
实现com.opensymphony.xwork2.validator.Validator;接口;配置文件必须以validate.xml命名;
14.按照自己的理解,谈谈自定义类型转换器的方法。
1 继承DefaultTypeConverter类;
2 注册局部类型转换器方法
在Action所在的目录下,创建ActionClassName-conversion.properties文件,文件内容格式syntax:
3 注册全局类型转换器方法
在classpath的根下创建xwork-conversion.properties 文件,文件内容语法:syntax:
15.Struts2中动态调用的格式()
A)ActionName?methodName.do。
B)ActionName!methodName.do。
C)ActionName?methodName.action。
D)ActionName!methodName.action。
16.什么是国际化?国际化资源文件的命名格式是?
国际化是(i18n)指的是软件设计阶段,就应该使软件具有支持多种语言和地区的功能、这样,
当需要在应用中添加对一种新语言和国家的支持是不需要对已有的软件返工,不需要修改的代码;
java资源文件的命名可以有3种格式:
basename_language_country.properties
basename_language.properties
basename_properties
17.在页面中使用(
化信息?表单标签中又当如何?
在action类中,可以继承actionSupport,使用getText()方法得到国际化信息;
在表单标签中,通过key属性指定资源文件的key
18.加载国际化资源文件有哪四种方式?
加载全局范围资源文件,加载包范围资源文件,加载action范围资源文件,加载临时指定范围内的资源文件;
19.按照你的理解,谈谈如何实现自由选择语言环境?
Struts 2提供一个名字为i18n的拦截器,并已把该拦截器添加到默认拦截器中。
i18n拦截器自动查找客户端请求中名字为request_locale的参数,并根据该参数实例化一个Locale对象。
Struts 2会把Locale保存在Session中的一个名字为WW_TRANS_I18N_LOCALE的属性中,该属性值将会作为浏览器默认的Locale.
20.请画出OGNL上下文的结构示意图。解释如何访问OGNL上下文的对象?常
常需要配合哪个Struts标签使用?
添加值栈,将值存放到值栈里面,在页面访问方式# 配合
21 Struts 2默认响应请求的后缀名是.action,若要配置Struts 2只处理以.do为后
缀名的请求,有哪些方法?若要处理多个后缀又当如何?
1 可以修改struts.xml 和struts.properties来修改默认的配置,
在struts.xml中
或者是修改struts.properties文件添加struts.action.extension = do这都是一样的效果
注意:struts.xml 和struts.properties的都放在src下发布的时候会自动拷贝到WEB-INF/classes下
2 在web.xml里面的filter中加入
3 处理多个后缀,在步骤1里面用逗号隔开添加即可;
21.实现在Action中访问Servlet API有哪几种方法?
直接访问方式,间接访问方式,ioc和非ioc方式;
22.Struts 2文件上传需要用到那两个包?根据你的理解,谈谈实现文件上传的步
骤。
Comons-fileupload-1.2.1.jar 和commons-io-1.2.1.jar
第一步:在web-inf/lib下面添加必须的jar文件
第二步:把form表单的enctype设置为“multipart/form-data”;
第三步:在action类中;添加必要属性:
private File upload;//得到上传文件的类型
private String uploadFIletype;//文件类型
private String uploadFileName;//文件名称
23.在strutrs2中数据验证失败时,通过()标签显示错误信息。
A)
B)
C)
D)
24.以下配置文件上传拦截器只允许bmp图片文件代码,正确的是()。
A)*.bmp
B)bmp
C)image/*.bmp
D)image/bmp
25.如下代码,对DemoAction起作用的拦截器有()。
A)只有testInterceptor.
B)只有demoInterceptor.
C)都不起作用。
D)同时起作用。
26.假设在Session中存在名称为uid属性。通过OGNL访问该属性。真确的代
码是()
A)#uid。
B)#session.id。
C)uid 。
D)${session.id}。
27.如下代码说法真确的是()(多选)
A)奇数行为黄色
B)偶数行为黄色
C)奇数行为红色
D)偶数行为红色
28.下面代码运行的效果是()
<%
String url="生成超链接";
pageContext.setAttribute("uid",url);
%>
A)生成超链接
B)生成超链接。
C)找不到对象。
D)什么都不输。
29.简述如何用拦截器解决表单重复提交问题?
第一步:在表单中加入
第二步:在struts.xml中添加如下配置token拦截器
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-many 4.Struts1流程: 1、客户端浏览器发出HTTP请求。 2、根据web.xml配置,该请求被ActionServlet接收。 3、根据struts-config.xml配置,ActionServlet先将请求中的参数填充到ActionForm中,然后ActionServlet再将请求发送到Action 进行处理。 4、是否验证,需要验证则调用ActionForm 的validate方法,验证失败则跳转到input,成功则继续。 5、Action从ActionForm获得数据,调用javabean 中的业务方法处理数据。 6、Action返回ActionForward对象,跳转到相应JSP 页面或Action。 7、返回HTTP响应到客户端浏览器。 MVC设计模式:modal:“模型”也称业务逻辑,是正真完成任务的代码,相当与JavaBeanview:视图,其实就是显示界面,相当于JSPcontroller:控制器,他控制模型和视图的交互过程,相当于servletstruts1是基于MVC设计模式hibernate是基于ORM对象关系映射 5.struts是什么? struts1是基于JSP和servlet的一个开源的Web应用框架,使用的是MVC的设计模式struts2是基于webwork技术的框架,是sun和webwork公司联手开发的一个功能非常齐全的框架,struts2和struts1没有任何关系,是一个全新的框架 6.spring是什么? spring是一个集成了许多第三方框架的大杂烩,其核心技术是IOC(控制反转,也称依赖注
--------------------------------------装--------------------------------------订------------------------------线---------------------------------------- **学院课程考试试卷 课程名称:《使用Struts2开发基于MVC设计模式的企业级应用》(A)卷 年级:班级: 姓名:_______________ 学号:_________________ 考试(考查) 闭卷 选择题(每题2分,共计100分) 1.在控制器类中一般需要添加相应属性的( A )和(C )。(选两项) A.setter方法 B.as方法 C.getter方法 D.is方法 2.业务控制器需要在( B )配置文件中进行配置 A.web.xml B.struts.xml C.struts2.xml D.webwork.xml 3.不属于Struts 2表单标签库的是( D )。 A.
Struts2复习题 1. 以下属于struts2 的控制器组件是: A. Action B.ActionForm C.ActionServlet D.dispatchAction 2. 以下属于struts2 的体系结构的是:(多选) A. struts2 控制器组件 B.struts2 配置文件 C.FilterDispathcer D.Action 3. 以下属于struts2 配置文件中的配置元素是:(多选) A.
1.SpringMVC Framework的理解: 1、它是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是java组件。并且和Spring提供的其他基础结构紧密集成 2、不依赖于Servlet API(目标虽是如此,但是在实现的时候确实是依赖于Servlet的) 3、可以任意使用各种视图技术,而不仅仅局限于JSP 4、支持各种请求资源的映射策略 5、它应是易于扩展的 2.简单的谈一下SpringMVC的工作流程? 流程? 1、用户发送请求至前端控制器DispatcherServlet? 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。? 3、处理器映射器找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。? 4、DispatcherServlet调用HandlerAdapter处理器适配器? 5、HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。? 6、Controller执行完成返回ModelAndView? 7、HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet? 8、DispatcherServlet将ModelAndView传给ViewReslover视图解析器? 9、ViewReslover解析后返回具体View? 10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。? 11、DispatcherServlet响应用户 3.如何解决POST请求中文乱码问题,GET的又如何处理呢? 在web.xml中加入: .
填空: 1.Struts 2以_过滤器_为核心,采用_矜截器_的机制来处理用户的请求。 2.构逮Struts 2应用的最基础的几个类库是_struts2-core_、_commons-logging_、 _xwork-core_^ _freamarker _____ 以及_ognl_。 3.Struts 2屮的控制器类是一个普通的_POjO_。 4.如果要在jSP页面屮使川Struts 2提供的标签库,酋先必须在页面屮使川taglib编译指令导入标签库?,其中taglib 编译指令力_<%@ taglib prefix=”s” uri=”strut-tags”%> _________ 。 5 .在Struts 2表华标签序?中,表単标签为__
SSH篇(后台) 一、SSH概述 1.1 SSH的含义 当前J2EE企业级应用分为三层:表现层-业务层-数据源层,而SSH代表了每一层的具体实现,它是三种流行的开源框架的缩写,S-Struts,S-Spring,H-Hibernate。这三者的组合是当前J2EE开发的标准模式,也代表了J2EE正在朝着简化复杂性,轻量化方向发展,最新J2EE 6已证明了这种趋势。 1.2 J2EE开发模式的演变 J2EE应用一直采用三层加构,即表现层-业务层-数据源层。 旧石器时代:J2EE应用采用表现层-远程EJB-实体EJB(或JDBC),这是最为正宗也是最复杂的J2EE开发,适用于银行等小部分项目;随后由于微软.NET的兴起以及其对J2EE的挑战,正宗的J2EE出现了一个变种:表现层-本地EJB-Ibatis,在这种模型中业务层选择了本地EJB,同时数据源层也改为Ibatis,这种模式极大的提高性能,华为大部分项目采用这种构架。在这两种架构中,由于采用了EJB组件模型,从而依赖于EJB容器,而EJB容器以一种全无或全有的方式提供服务,同时业务实现也受制于容器。这种开发模式导致了以下复杂性:依赖于应用服务器,不可移植,开发困难,无法在容器外测试,部署复杂,效率低下。 新石器时代:在新石器时代依然采用了三层加构,只是抛弃了EJB,而采用了Spring等轻量级容器,同时持久化由全自动的Hibernate承担。在这种架构中,由于放弃了EJB,放弃了全功能的应用服务器,在节省了软件许可费用的同时也大大提高了软件开发效率。由于web服务器的可移植也好于应用服务器,从而使得J2EE应用可顺利移植。
Struts2复习题 1.以下属于struts2的控制器组件是: A.Action B.ActionForm C.ActionServlet D.dispatchAction 2.以下属于struts2的体系结构的是:(多选) A.struts2控制器组件 B.struts2配置文件 C.FilterDispathcer D.Action 3.以下属于struts2配置文件中的配置元素是:(多选) A.
、你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用? 答: MVC设计模式(应用观察者模式的框架模式) M: Model(Business process layer) ,模型,操作数据的业务处理层, 并独立于表现层(Independent of presentation) 。 V: View(Presentation layer) ,视图,通过客户端数据类型显示数据, 并回显模型层的执行结果。 C: Controller(Control layer) ,控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric) : JSP+Servlet+JavaBean ,以控制为核心,JSP 只负责显示和收集数据,Sevlet ,连接视图和 模型,将视图层数据,发送给模型层,JavaBea n,分为业务类和数据实体,业务类处理业 务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。StrutsMVC 框架(Web application frameworks) Struts是使用MVC勺实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model: Struts没有提供model类。这个商业逻辑必须由Web应用程序的幵发者以JavaBean 或EJB的形式提供 View:Struts 提供了action form 创建form bean, 用于在controller 和view 间传输数据。此外,Struts 提供了自定义JSP标签库,辅助幵发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中Controller :Struts 提供了一个核心的控制器ActionServlet ,通过这个核心的控制器来
Struts 2作业 1.简述什么是MVC? 答:MVC 的全称为model-view-controller(模型-视图-控制器)。MVC 是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护。使用MVC 开发出来的应用程序一般包括以下几块内容:·控制器(Controller):控制器类处理客户端向Web 应用程序发出的请求,获取数据,并指定返回给客户端,用来显示处理结果的视图。·模型(Model):模型类代表了应用程序的数据,这些数据通常具有一个数据验证逻辑,用来使得这些数据必须符合业务逻辑。·视图(View):视图类是Web 应用程序中用来生成并显示HTML 格式的服务器端对客户端请求的响应结果的模板文件 2.Struts 2以(WebWork)为核心,采用(拦截器)的机制来处理用户的 请求。 3.简述一个请求在Struts 2框架中的处理流程,请按自己对框架的理解叙述。答:1-用户提交自己的请求;2-由web.xml拦截,转发到action进行处理;3- Struts.xml根据相应的action配置,调用相应的方法来处理,并根据结果转发到不同的页面。 4.不属于Action接口中定义的字符串常量是( B )? A)SUCCESS B)FAILURE C)ERROR D)INPUT 5.资源文件的后缀名为(D)? A)txt B)doc C)property D)properties 6.在JSP页面中可以通过Struts 2提供的(D)标签来输出国际化信息。 A)
1.简述Struts框架的初始化流程。 答案:对于采用Struts框架的Web应用,在Web应用启动时就会加载并初始化控制器ActionServlet ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到ActionMappings对象中。 在Struts framework中,Controller主要是ActionServlet,但是对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成(也许这几个组件,应该划分到模型中的 业务逻辑一块)。 其中,Action扮演了真正的控制逻辑的实现者,而ActionMapping和ActionForward则指定了不同业务 逻辑或流程的运行方向。 2.简述Struts框架响应客户请求的工作流程 1.检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的信息。 2.如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中。 3.根据配置信息决定是否需要表单验证。如果需要验证,就调用ActionForm的validate()方法。 4.如果ActionForm的validate()方法返回null或返回一个不包含ActionMessge的ActionErrors对象,就表示表单验证成功。 5.ActionServlet根据AtionMapping实例包含的映射信息决定将请求转发给哪个Action。如果应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法。 6.Action的execute()方法返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指向的JSP组件。 7.ActionForward对象指向的JSP组件生成动态页面,返回给客户。 对于以上流程的步骤(4),如果ActionForm的validate()方法返回一个包含一个或多个ActionError 的ActionErrors对象,就表示表单验证失败,此时ActionServlet将直接把请求转发给包含客户提交表 单的JSP组件。在这种情况下,不会再创建Action对象并调用Action的execute方法。 3Struts框架的数据验证可分为几种类型? 表单验证(由ActionForm Bean处理):如果用户没有在表单中输入姓名,就提交表单,将生成表单验证 错误 业务逻辑验证(由Action处理):如果用户在表单中输入的姓名为“Monster”,按照本应用的业务规则,不允许向“Monster”打招呼,因此将生成业务逻辑错误。 4简述Form Bean的表单验证流程。 1、当用户提交了HTML表单,Struts框架自动把表单数据组装到ActionForm Bean中。 2、接下来Struts框架会调用ActionForm Bean的validate()方法进行表单验证。 3、如果validate()方法返回的ActionErrors对象为null,或者不包含任何ActionMessage对象,就表示没有错误,数据验证通过。 4、如果ActionErrors中包含ActionMessage对象,就表示发生了验证错误,Struts框架会把ActionErrors对象保存到request范围内,然后把请求转发到恰当的视图组件,视图组件通过
SCME-G2阶段模拟考试二 一、选择题(每题2分,共100分) 1.重定向可以使用()方法。 A.response.sendRedirect(“login.jsp”); B.request.sendRedirect(“login.jsp”); C.
Java寒假笔试模拟题三 姓名:________学号:___________ 一、单项选择题: 1.Struts是一个开源的Web开发框架,它是由哪个组织进行维护的?( c )。 A.BEA B.JBoss C.Apache D.Sybase 2.如果在Web应用程序中添加struts2框架的支持,需要在配置哪个类作为struts2的核心控制器( a )。 A.FilterDispatcher B.StrutsServlet C.ApplicationContextListener D.SessionFactory 3.Struts2的核心控制器需要在哪个配置文件中进行配置( b ) A.struts.xml B.web.xml C.applicationContext.xml D.webwork.xml 4.关于开发人员自己创建的Action,以下说法正确的是( c ) A.Struts2中的Action必须继承Action类 B.Struts2中的Action必须实现Action接口
C.Struts2中的Action无需实现或者继承任何类或接口 D.Struts2中的Action必须继承ActionSupport类 解释:Struts 2的Action无须实现任何接口或继承任何类型,普通的POJO类就可以用做Action类,但是,我们为了方便实现Action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类,并重载(Override)此类里的String execute()方法,因为ActionSupport已经实现了Action接口,还实现了Validateable 接口,提供了数据校验功能。通过继承该ActionSupport类,可以简化Struts 2的Action开发。 5.以下关于Struts2配置文件中package元素说法错误的是( d ). A.package元素的name属性不可以重复 B.package元素可以进行继承 C.package元素可以声明为抽象(abstract=”true”) D.package元素可以嵌套 6.以下关于Struts2配置文件中action元素说法错误的是( a ). A.任何一个action的name属性都不可以相同 B.action元素可以没有class属性 C.action元素中拥有method属性 D.action元素的子元素可以配置interceptor-ref 7.Struts2进行数据收集和类型转换的工作,是由以下哪个负责完成的( a )。 A.FilterDispatcher B.ActionInvocation
一、你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用? 答: MVC设计模式(应用观察者模式的框架模式) M:Model(Businessprocesslayer),模型,操作数据的业务处理层,并独立于表现层(Independentofpresentation)。 V:View(Presentationlayer),视图,通过客户端数据类型显示数据,并回显模型层的执行结果。C:Controller(Controllayer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric): JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。 StrutsMVC框架(Webapplicationframeworks) Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean或EJB 的形式提供 View:Struts提供了actionform创建formbean,用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。 Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在的特定配置文件中进行配置,接收JSP输入字段形成Actionform,然后调用一个Action控制器。Action控制器中提供了model的逻辑接口。 二、什么是WebService? 答: WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。 WebService实现不同语言间的调用,是依托于一个标准,webservice是需要遵守WSDL(web 服务定义语言)/SOAP(简单请求协议)规范的。 WebService=WSDL+SOAP+UDDI(webservice的注册) Soap是由Soap的part和0个或多个附件组成,一般只有part,在part中有Envelope和Body。WebService是通过提供标准的协议和接口,可以让不同的程序集成的一种SOA架构。 WebService的优点 (1)可以让异构的程序相互访问(跨平台) (2)松耦合 (3)基于标准协议(通用语言,允许其他程序访问) WebService的基本原理 (1)ServiceProvider采用WSDL描述服务 (2)ServiceProvider采用UDDI将服务的描述文件发布到UDDI服务器(Registerserver) (3)ServiceRequestor在UDDI服务器上查询并获取WSDL文件 (4)Servicerequestor将请求绑定到SOAP,并访问相应的服务。
1.下面关于Struts2描述正确的是()。 A. Struts2是线程安全的 B. Strut2为每个请求都只生成一个Action实例 C .Strut2是在Struts1基础上发展起来的 D. Struts2只支持jsp视图组件 2.Struts2配置包时,必须继承struts-default包,在下 面的哪个文件中可以找到struts-default包的配置()。 A.default.properties B. struts-message.properties C. struts.dtd D.struts-default.xml 3.Struts2默认的处理结果类型是()。 A. dispatcher B. redirect C. chain D. 以上说法都不正确 4.在Struts2框架中,实现Action接口的作用是()。 A.实现其中的execute()方法 B.实现数据校验 C.实现国际化 D.规范Action类 5.在Struts2中动态方法调用的格式为()。 A. ActionName_methodName.do B. ActionName!methodName.do C. ActionName_methodName.action D. ActionName!methodName.action 6.在Struts2中自定义的类型转换器必须实现的接口是 ()。 A.Convert B.TypeConverter C. StrutsTypeConverter D. StrutsConvert 7.在Struts2中,Action类中的属性从表单获取用户输入 的值,以下哪个组件将表单的值解析出来赋给Action ()。 A. ActionServlet B. Action C. 拦截器栈 D. HttpServletRequest 8.在Struts2中,关于