Struts2+Hibernate架构技术教程课后参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章Struts2框架技术入门
1.5 习题
1.5.1 选择题
1.D
2.A
3.C
4.B
5.B
1.5.2 填空题
1.MVC
2.Struts1和WebWork
3.IBM
4. FilterDispatcher
5.JSP、Struts2标签
1.5.3 简答题
1.简述MVC设计模式的工作流程。
答:MVC设计模式工作流程是:
(1)用户的请求(V)提交给控制器(C);
(2)控制器接受到用户请求后根据用户的具体需求,调用相应的JavaBean或者EJB(M部分)来进行处理用户的请求;
(3)控制器调用M处理完数据后,根据处理结果进行下一步的调转,如跳转到另外一个页面或者其他Servlet。
2.简述Struts2的工作原理。
答:Struts2中使用拦截器来处理用户请求,从而允许用户的业务控制器Action与Servlet分离。用户请求提交后经过多个拦截器拦截后交给核心控制器FilterDispatcher处理,核心控制器读取配置文件struts.xml,根据配置文件的信息指定某一个业务控制器Action(POJO类)来处理用户数据,业务控制器调用某个业务组件进行处理,在处理的过程中可以调用其他模型组件共同完成数据的处理。Action处理完后会返回给核心控制器FilterDispatcher一个处理结果,核心控制器根据返回的处理结果读取配置文件struts.xml,根据配置文件中的配置,决定下一步跳转到哪一个页面。
一个客户请求在Struts2框架中处理的过程大概有以下几个步骤:
(1)客户提交请求到服务器;
(2)请求被提交到一系列的过滤器过滤后最后到FilterDispatcher;
FilterDispatcher是核心控制器,是基于Struts2中MVC模式的控制器部分;
(3)FilterDispatcher读取配置文件struts.xml,根据配置信息调用某个Action来处理客户请求;
(4)Action执行完毕,返回执行结果,根据struts.xml的配置找到对应的返回结果。
1.5.4 实训题
略
第2章Struts2核心组件详解
2.7 习题
2.7.1 选择题
1.B
2.C
3.B
4.D
5.B
6.D
2.7.2 填空题
1. struts.xml和struts.properties
2. struts.xml、struts.properties和web.xml
3. Action和拦截器
4.非耦合性
5.IoC方式和非IoC方式
6.不指定method属性和指定method属性
7.表达式、根对象和上下文环境
8.UI标签、非UI标签
9.表单标签和非表单标签
10.数据标签和控制标签
2.7.3 简答题
1.简述struts.xml配置文件的作用。
答:Struts2的核心配置文件是struts.xml,struts.xml具有重要的作用,所有用户请求被Struts2核心控制器FilterDispatcher拦截,然后业务控制器代理通过配置管理类查询配置文件struts.xml中由哪个也Action处理。
2.简述Struts2的核心控制器FilterDispatcher的作用。
答:FilterDispatcher是Struts2框架的核心控制器,该控制器作为一个Filter运行在Web应用中,它负责拦截所有的用户请求,当用户请求到达时,该Filter会过滤用户请求。如果用户请求以action结尾,该请求将被转入Struts2框架处理。Struts2框架获得了*.action请求后,将根据*.action请求的前面部分决定调用哪个业务控制器组件,例如,对于login.action请求,Struts2调用名为login的Action来处理该请求。Struts2应用中的Action都被定义在struts.xml文件中,在该文件中定义Action时,定义了该Action的name 属性和class属性,其中name属性决定了该Action处理哪个用户请求,而class属性决定了该Action的实现类。
3.简述Struts2的业务控制器Action的作用。
答:Action类中包含了对用户请求的处理逻辑,因此也把Action称为Action业务控制器。Action是应用的核心,业务控制器是Struts2中实现业务控制的中心,除了保存用户的数据外,它也负责调用其他模型组件在execute()方法中进行数据处理。
2.7.4 实训题
略
第3章Struts2的高级组件
3.6 习题
3.6.1 选择题
1.A
2.A
3.B
4.C
5.C
3.6.2 填空题
1.properties
2.native2ascii
3.AOP
4.服务器端校验
3.6.3 简答题
1.什么是国际化,为什么使用国际化?
答:“国际化”是指一个应用程序在运行时能够根据客户端请求所来自的国家/地区、语言的不同而显示不同的用户界面。例如,请求来自于一台中文操作系统的客户端计算机,则应用程序响应界面中的各种标签、错误提示和帮助信息均使用中文文字;如果客户端计算机采用英文操作系统,则应用程序也应能识别并自动以英文界面做出响应。
引入国际化机制的目的在于提供自适应的、更友好的用户界面,而并未改变程序的其他功能/业务逻辑。人们常用I18N 这个词作为“国际化”的简称,其来源是英文单词Internationalization 的首末字母I 和N 及它们之间的字符数18。
2.简述Struts2中实现国际化流程的过程。
答:(1)不同地区使用操作系统环境不同,如中文操作系统、英文操作系统、韩文操作系统等,在获得客户端地区的语言环境后,struts.xml文件会找国际化资源文件,当时中文语言环境,就加载中文国际化资源文件。所示国际化需要编写支持多个语言的国际化资源文件,并且配置struts.xml文件。
(2)根据选择的语言加载相应的国际化资源文件,视图通过Struts2标签读取国际化资源文件把数据输出到页面上,完成页面的显示。
3.什么是拦截器,拦截器的作用是什么?
答:拦截器(Interceptor)体系是Struts2的一个重要组成部分,正是大量的内置拦截器才提供了Struts2的大部分操作。当FilterDispatcher拦截到用户请求后,大量的拦