搜档网
当前位置:搜档网 › 实验三(Struts2的国际化)

实验三(Struts2的国际化)

实验三(Struts2的国际化)
实验三(Struts2的国际化)

班级:计算机12-2 学号: 12034480233 姓名:唐大义成绩:

实验三:Struts2的国际化

实验目标:

掌握Struts2国际化技术的使用

实验内容:

使用struts2标签库编写一个用户注册的JSP页面,包含有姓名、昵称、性别和爱好四个字段,然后把这四个字段的标题及选项内容改为支持国际化显示。实验步骤:

1、创建web工程;

2、添加Struts2框架所必须的jar包;

3、添加Struts2的核心配置文件struts.xml;

4、配置web.xml文件;

5、编写register.jsp,页面的功能为用户注册,如下图所示,要求只能够使用struts 标签库来实现;在jsp中引入strusts标签库的方法为:

“<%@taglib uri="/struts-tags" prefix="s"%>”

6、部署运行,观察页面效果;

7、建立国际化资源文件messages_en_US.properties及messages_zh_CN.properties;

8、把register.jsp中的中文全部改为支持国际化显示;

9、在struts.xml中配置国际化资源文件所在的位置,配置的常量为

“struts.custom.i18n.resources”;

10、部署运行项目进行测试国际化功能的效果。

提示:性别和爱好中的选项需要编写Action从后台获取国际化资源。

实验报告:

提交相关程序代码(action类程序、web.xml、struts.xml、JSP、国际化资源文件)和页面效果.

1、action类:

package com.tdy.action;

import java.util.HashMap;

import java.util.Map;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {

private Map sexs = new HashMap();

private Map hobbies = new HashMap();

public Map getSexs() {

return sexs;

}

public void setSexs(Map sexs) {

this.sexs = sexs;

}

public Map getHobbies() {

return hobbies;

}

public void setHobbies(Map hobbies) {

this.hobbies = hobbies;

}

public String login(){

String male = getText("male");

String female = getText("female");

sexs.put("f", female);

sexs.put("m", male);

String dancing = getText("dancing");

String football = getText("football");

String other = getText("other");

hobbies.put("d", dancing);

hobbies.put("fb", football);

hobbies.put("o", other);

return SUCCESS;}}

2、Web.xml页面:

xmlns:xsi="https://www.sodocs.net/doc/3817988587.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.sodocs.net/doc/3817988587.html,/xml/ns/javaee

https://www.sodocs.net/doc/3817988587.html,/xml/ns/javaee/web-app_2_5.xsd">

index.jsp

struts2

org.apache.struts2.dispatcher.FilterDispatcher

struts2

/*

3、Struts.xml页面:

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

"https://www.sodocs.net/doc/3817988587.html,/dtds/struts-2.0.dtd">

/register.jsp

4、Jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<%@taglib prefix="s" uri="/struts-tags" %>

<%String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

My JSP 'register.jsp' starting page

5、国际资源文件

实验结果:

实验结论:

通过这次实验,明白了Struts2的国际化使用,通过国际化的使用,将会使得各国之间技术交流将进一个高的层次!从而大家可以借此学习外国的技术!

Java多方式实现文件上传

在Struts 2中实现文件上传 前一阵子有些朋友在电子邮件中问关于Struts 2实现文件上传的问题,所以今天我们就来讨论一下这个问题。 实现原理 Struts 2是通过Commons FileUpload文件上传。Commons FileUpload通过将HTTP的数据保存到临时文件夹,然后Struts使用fileUpload拦截器将文件绑定到Action的实例中。从而我们就能够以本地文件方式的操作浏览器上传的文件。 具体实现 前段时间Apache发布了Struts 2.0.6 GA,所以本文的实现是以该版本的Struts 作为框架的。以下是例子所依赖类包的列表: 清单1 依赖类包的列表 首先,创建文件上传页面FileUpload.jsp,内容如下: <% @ page language = " java " contentType = " text/html; charset=utf-8 " pageEncodi ng = " utf-8 " %> <% @ taglib prefix = " s " uri = " /struts-tags " %> Struts 2 File Upload

springmvc原理

1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。 2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller. 3.DispatcherServlet请请求提交到目标Controller 4.Controller进行业务逻辑处理后,会返回一个ModelAndView 5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象 6.视图对象负责渲染返回给客户端。 为什么要使用Spring: AOP 让开发人员可以创建非行为性的关注点,称为横切关注点,并将它们插入到应用程序代码中。使用AOP后,公共服务(比如日志、持久性、事务等)就可以分解成方面并应用到域对象上,同时不会增加域对象的对象模型的复杂性。 IOC 允许创建一个可以构造对象的应用环境,然后向这些对象传递它们的协作对象。正如单词倒置所表明的,IOC 就像反过来的JNDI。没有使用一堆抽象工厂、服务定位器、单元素(singleton)和直接构造(straightconstruction),每一个对象都是用其协作对象构造的。因此是由容器管理协作对象(collaborator)。 Spring即使一个AOP框架,也是一IOC容器。Spring 最好的地方是它有助于您替换对象。有了Spring,只要用JavaBean属性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。 Spring 框架是一个分层架构,由7 个定义良好的模块组成。Spring模块构建在核心容器之上,核心容器定义了创建、配置和管理bean 的方式,如图 1 所示。 组成Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下: 核心容器:核心容器提供Spring框架的基本功能。核心容器的主要组件是BeanFactory,它是工厂模式的实现。BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。 Spring 上下文:Spring 上下文是一个配置文件,向Spring框架提供上下文信息。Spring 上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。 Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了Spring框架中。所以,可以很容易地使Spring 框架管理的任何对象支持AOP。Spring AOP

struts2复习题(含答案)

Struts2复习题 1.以下属于struts2的控制器组件是: 2.以下属于struts2的体系结构的是:(多选) 控制器组件配置文件 3.以下属于struts2配置文件中的配置元素是:(多选) A. B. C. D. 4.关于struts1和struts2对比的说法正确的是: 要求Action类继承struts1框架中的Action父类,struts2中则不一定需要继承,可以是POJO 类 中的Action不是线程安全的,而struts2中的Action是线程安全的 和struts2中都使用ActionForm对象封装用户的请求数据 使用OGNL表达式语言来支持页面效果,struts2通过ValueStack技术使标签库访问值 5.以下关于ValueStack说法正确的是:(多选) A.每个Action对象实例拥有一个ValueStack对象 B.每个Action对象实例拥有多个ValueStack对象 中封装了需要传入下一个页面的值,这些值封装在ValueStack对象中 会在请求开始时被创建,请求结束时消亡 6.关于struts2配置文件说法正确的是: A.必须在WEB-INF/classes目录下 B.名字必须为 C.配置Action时,必须配置包信息 D.使用元素配置转发 7.在struts2配置中用()元素来配置常量: A. B. C. D. 8.关于struts2包的说法正确的是: 框架使用包来管理常量 框架定义包时必须指定name属性 框架中配置包时,必须继承自struts-default包,否则会报错 框架中使用包来管理Action 9.struts2中获取Servlet API的方法正确的是:(多选) A.使用ActionContext对象以解耦合的方法访问Servlet API B.使用ServletActionContext对象以解耦合的方式访问Servlet API C.使用ActionContext对象以耦合的方式访问Servlet API D.使用ServletActionContext对象以耦合的方式访问Servlet API 10.struts2动态调用的格式为: ! 11.如果要实现struts2的数据校验功能 A.普通Action类可以实现 B.继承自Action接口可以实现 C.继承自ActionSupport类可以实现 D.继承自ActionValidate类可以实现

SSH题库

1. SSH中,依次处理的哪一层的实现? D A.Struts –业务逻辑层;Hibernate-表现层;Spring-持久层 B.Struts-表现层;Hibernate-业务逻辑层;Spring-持久层 C.Struts-持久层;Hibernate-表现层;Spring-业务逻辑层 D.Struts-表现层;Hibernate-持久层;Spring-业务逻辑层 2. 在Struts实现的MVC框架中,(A)类是包含了excute方法的控制器类,负责调用模型的方法,控制应用程序的流程。 A. Action B. EJB C. ActionServlet D. JSP 3. 在基于Struts框架的Web应用中,下面关于Action类的说法正确的是(C)。 A. Action类属于模型组件 B. Action类主要用来完成实际的业务逻辑 C. Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程 D.在Web应用启动时会自动加载所有的Action实例 4. 下面关于数据持久化概念的描述,错误的是(D)。 A.保存在内存中数据的状态是瞬时状态 B.持久状态的数据在关机后数据依然存在 C.数据可以由持久状态转换为瞬时状态 D.将数据转换为持久状态的机制称为数据持久化 5. 下面关于Hibernate的说法,错误的是(C)。 A.Hibernate是一个“对象-关系映射”的实现 B.Hibernate是一种数据持久化技术 C.Hibernate是JDBC的替代技术 D.使用Hibernate可以简化持久化层的编码 6. 在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是(B)。 A.配置客户和订单关联的cascade属性为save-update B.配置客户和订单关联的cascade属性为all C.设置多对一关联的inverse属性为true D.设置多对一关联的inverse属性为false 7. 执行下面的hql查询,关于返回值的说法,正确的是(B)。 select https://www.sodocs.net/doc/3817988587.html,ername,https://www.sodocs.net/doc/3817988587.html,erid from https://www.sodocs.net/doc/3817988587.html,er u where u is not null A.语法错误,不能执行 B.返回一个类型为List的实例 C.返回一个数组 D.当返回结果只有一条时,返回一个数组 8. 下面创建Criteria对象的语句中正确的是(D)。 A.Criteria c = query.createCriteria(); B.Criteria c = query.addCriteria(); C.Criteria c = session.createCriteria(); D.Criteria c = session.createCriteria(User.class); 9. 下面关于“依赖注入”的说法,错误的是(D)。 A.将组件间的依赖关系采取配置文件的方式管理,而不是硬编码在代码中 B.降低了组件间的耦合,使程序更容易维护和升级 C.促进了“面向接口”编程,使构建大规模程序更轻松 D.需要定义大量接口,增加了编码复杂度 10. 关于Spring的说法错误的是(C)。

struts2国际化

国际化是商业系统中不可或缺的一部分,所以无论您学习的是什么Web框架,它都是必须掌握的技能。 其实,Struts 1.x在此部分已经做得相当不错了。它极大地简化了我们程序员在做国际化时所需的工作,例如,如果您要输出一条国际化的信息,只需在代码包中加入FILE-NAME_xx_XX.properties(其中FILE-NAME为默认资源文件的文件名),然后在struts-config.xml中指明其路径,再在页面用标志输出即可。 不过,所谓“没有最好,只有更好”。Struts 2.0并没有在这部分止步,而是在原有的简单易用的基础上,将其做得更灵活、更强大。 国际化Hello World 下面让我们看一个例子——HelloWorld。这个例子演示如何根据用户浏览器的设置输出相应的HelloWorld。 1.在Eclipse创建工程配置开发和运行环境(如果对这个步骤有问题,可以 参考我早前的文章《为Struts 2.0做好准备》)。 2.在src文件夹中加入struts.properties文件,内容如下: struts.custom.i18n.resources=globalMessages Struts 2.0有两个配置文件,struts.xml和struts.properties都是放在WEB-INF/classes/下。 o struts.xml用于应用程序相关的配置 o struts.properties用于Struts 2.0的运行时(Runtime )的配置 3.在src文件夹中加入globalMessages_en_US.properties文件,内容如下: HelloWorld=Hello World! 4.在src文件夹中加入globalMessages_zh_CN.properties文件,内容如下: HelloWorld=你好,世界! 在此想和大家分享一个不错的编写properties文件的Eclipse插件 (plugin),有了它我们在编辑一些简体中文、繁体中文等Unicode 文本时,就不必再使用native2ascii编码了。您可以通过Eclipse中的软件升级(Software Update)安装此插件,步骤如下:

struts2题目

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中,关于

Struts2+Hibernate架构教程课后参考答案

第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)用户的请求

Struts2配置Result

配置Result 一个result代表了一个可能的输出。当一个Action类的方法执行完成时,它返回一个字符串类型的结果码,框架根据这个结果码选择对应的result,向用户输出。 Results配置由两部分组成:一部分是result映射,另一部分是result类型。 1.结果映射 在struts.xml文件中,使用result元素来配置result映射。result元素有两个可选的属性: 在Struts2中允许定义一个默认的Result类型,这是通过result-type元素来定义的。在框架的默认配置文件struts-default.xml中,在struts-default.xml包中有如下的一个配置: result-type元素的default属性指定名为dispatcher的结果类型, dispatcher结果类型使用ServletAPI中的ResultDispatcher将请求导向到目 标资源(通常是JSP页面)。如果在使用result元素配置result映射时,没有使用 type类型,那么框架就将使用默认的dispatcher类型。 由于Struts2中的包是可以继承的,所以我们定义的package只要继承了 struts-default包,因此也继承了默认的结果类型,所以可以省略result元素的 type属性。 如果没有指定result元素的name属性,那么框架将把它命名为”success”。 2.结果类型 在框架调用Action对请求进行处理之后,就要向用户呈现一个结果视图,Struts2支持多种类型的视图,这些视图是由不同的结果类型来管理的。 一个结果类型就是实现了com.opensymphony.xwork2.Result接口的类,在Struts2中定义了多种结果类型,如下表所示:

Struts1学习笔记总结

Struts1 (1) Struts1和Servlet的关系 (1) 创建第一个Struts1项目 (1) 例子1: (3) 总结重点:struts1的工作流程(基于MVC模式的) (7) 一.普通的Servlet的工作流程 (7) 二.Structs1的工作流程(和上面的对比记忆) (8) Struts标签 (9) Bean标签 (9) html标签 (10) logic标签(逻辑标记) (12) i18n(国际化) (13) Struts1 Struts1和Servlet的关系 Jsp+Servlet+Javabean ActionForm和VO的区别: 一样的内容,不一样的作用 ActionForm只接收前台表单传来的数据 VO是conga后台提取的数据向前台传递 创建第一个Struts1项目 新建一个web项目,选择1.4即可 右键----MyEclipse----Add Struts Capacity

---------------Struts控制文件的路径 TLD(标签) 1) 2):显示信息 3):逻辑标签 struts-config.xml

struts2_day03笔记

Struts2 框架第三天 今天重点内容安排: 第一天:struts2 开发流程、访问Action,Action方法调用,结果集类型 第二天:获取请求参数,请求数据校验机制,拦截器 1、V alueStack 值栈的存储原理和相关操作 2、Ognl 表达式语言语法 3、struts2 页面控制标签 4、struts2 form表单相关标签 重点难点:值栈和Ognl 1.值栈和Ognl表达式 1.1.什么是Ognl Ognl 对象导航图语言Object Graphic Navigation Language,类似EL,比EL ${}语法要强大很多,Struts2框架使用OGNL作为默认的表达式语言必须要引入struts标签库 EL Expression Language 表达式语言,用来获取JSP页面四个域范围数据 pageContext、request、session、application )

Ognl 主要用法: 1、访问OGNL上下文值栈对象获取数据(最重要) 2、操作集合对象(结合struts2 标签库使用)---- 生成checkbox 、生成select 1.2.什么是值栈ValueStack接口! 值栈ValueStack 实际上是一个接口,struts2 Ognl使用都是基于值栈完成的 Struts2 内部提供OgnlValueStack的接口实现类,实现了值栈接口! 前端控制器每一次请求都会创建一个值栈对象源码:

一次请求对应一个值栈对象值栈生命周期= request 生命周期的!! 值栈是struts2 一个数据结构,贯穿整个Action实例生命周期(request生命周期),一次请求对应一个Action实例,一个Action实例对应一个值栈实例 值栈保存了Action 和其它常用web对象的引用,通过值栈,间接操作这些对象!1.3.值栈的存储结构 1:采用标签查看值栈结构图:

struts2教程(完全版)

Yaio 4 一、准备工作及实例 4 1.解压struts- 2.1.6-all.zip 4 2.六个基本包 4 3.初识struts2配置文件 4 (1).web.xml文件 4 (2).struts.xml文件 4 (3).struts.properties(参default.properties) 4 (4)struts-default.xml 5 (5)其它配置文件 5 4.让MyEclipse提示xml信息 5 5.如何使用alt+/提示 5 6.实例 5 7.开启struts2自带的开发模式常量 7 8.vo传参模式 8 9.ModerDriven传参模式(不建议采用) 8 10.为什么要使用struts2代替struts1.x 9

二、struts.xml配置及例程 9 1.配置文件的优先级 9 2.配置形式 9 3.package配置相关 10 4.分工合作include:指定多个配置文件 12 5.tomcat认证访问 12 6.初识拦截器 13 7.Action中的method属性 15 8.使用ForwardAction实现页面屏蔽。 17 8.使用default-Action配置统一访问 17 小结Action 18 9.使用通配符 18 10.使用0配置:ZERO Annotation 19 11.Result配置详解 19 12.异常处理 24 三、在Action获取Scope对象 25 方式一、与Servlet解耦合的非IOC方式 25

方式二、与Servlet解耦合的IOC方式 27 方式三、与Servlet耦合的非IOC方式 27 方式四、与Servlet耦合的IOC方式 28 四、OGNL与ValueStack(VS) 29 1.值栈入门 29 2.OGNL入门 31 3.普通方法访问 31 4.静态方法访问 31 5.默认类Math的访问 32 6.调用普通类的构造方法 32 7.集合对象初步 32 8.集合对象进阶 33 9.N语法top语法 34 10.获取Stack Context中的信息 35 11.总结$ # %的区别 35 12.总结OGNL[重点] 35 五、拦截器 36

SSH整合入门详解

Struts+Spring+Hibernate整合入门详解 基本概念和典型实用例子。 一、基本概念 Struts:作为基于MVC 模式的Web 应用最经典框架,两个项目Struts 和webwork已经集成,成为现在的Struts2。目前的最新版本是2.0.9(2007-7)。 Spring:是一个轻型的容器,利用它可以使用一个外部XML 配置文件方便地将对象连接在一起。每个对象都可以通过显示一个JavaBean 属性收到一个到依赖对象的引用,留给您的简单任务就只是在一个XML 配置文件中把它们连接好。 Hibernate 是一个纯Java 的对象关系映射和持久性框架,它允许您用XML 配置文件把普通Java 对象映射到关系数据库表。使用Hibernate 能够节约大量项目开发时间,因为整个JDBC 层都由这个框架管理。这意味着您的应用程序的数据访问层位于Hibernate 之上,完全是从底层数据模型中抽象出来的。 三种技术到目前已经比较成熟,而且他们都是免费的!让我们对三者集成进行一个初览(简单而不专业): 我们用Struts实现从Web(网页,MVC中的View)到后台系统的映射(Web Action),然后由Spring管理这些Action,把它们作为Bean和其他对象一起处理。这些Bean之间处理业务逻辑、数据、系统状态等,且它们被Spring统一管理,为了区分,就算大概包括MVC的MC部分吧。然后需要持久化的数据由Spring和Hibernate之间的接口交由Hibernate处理(这个属于持久层)。 必须基础:只要Java基础,一点HTML知识、XML基础就可以了。本文的目的就是从零开始建立第一个Struts+Spring+Hibernate应用。即使它是最简单的,我们也希望初学者能够从中理解一些思想,其中也包括系统架构的设计思想。 二、环境搭建 我们坚持免费才是硬道理,开源才是好事情,所以我们全部使用开源免费的工具和软件。如果使用MyEclipse,其中的工具将有助于简化下面演示的工程开发,但本文不用。 所需软件包如下表:

Struts2中 struts.xml的Action配置详解

Struts2中struts.xml的Action配置详解 使用package可以将逻辑上相关的一组Action,Result,Interceptor等组件分为一组,Package 有些像对象,可以继承其他的Package,也可以被其他package继承,甚至可以定义抽象的Package。 由于struts.xml文件是自上而下解析的,所以被继承的package要放在继承package的前边。Namespace将action分成逻辑上的不同模块,每一个模块有自己独立的前缀。使用name space可以有效的避免action重名的冲突,例如每一个package都可以有自己独立的Men u和Help action,但是事项方式各有不同。Struts2标签带有namespace选项,可以根据namespace的不同向服务器提交不同的package的action的请求。 “/”表示根namespace,所有直接在应用程序上下文环境下的请求(Context)都在这个pa ckage中查找。 “”表示默认namespace,当所有的namespace中都找不到的时候就在这个namespace中寻找。 例如,有如下配置: CODE: greeting.jsp bar1.jsp

JavaEE开发四大常用框架.

我们对 Java EE的框架有过很多介绍, 本文将对 Java EE中常用的四个框架做一下系统的归纳,希望大家喜欢。 Struts Struts 是一个基于 Sun Java EE 平台的 MVC 框架,主要是采用 Servlet 和 JSP 技术来实现的。 Struts 框架可分为以下四个主要部分,其中三个就和 MVC 模式紧密相关: 1、模型 (Model ,本质上来说在 Struts 中 Model 是一个 Action 类(这个会在后面详细讨论 ,开发者通过其实现商业逻辑,同时用户请求通过控制器 (Controller 向 Action 的转发过程是基于由 struts-config.xml 文件描述的配置信息的。 2、视图 (View , View 是由与控制器 Servlet 配合工作的一整套 JSP 定制标签 库构成,利用她们我们可以快速建立应用系统的界面。 3、控制器(Controller ,本质上是一个 Servlet ,将客户端请求转发到相应的 Action 类。 4、一堆用来做 XML 文件解析的工具包, Struts 是用 XML 来描述如何自动产 生一些 JavaBean 的属性的, 此外 Struts 还利用 XML 来描述在国际化应用中的用户提示信息的(这样一来就实现了应用系统的多语言支持。 Spring Spring 是轻量级的 Java EE应用程序框架。 Spring 的核心是个轻量级容器(container ,实现了 IoC (Inversion of Control 模式的容器, Spring 的目标是实现一个全方位的整合框架, 在 Spring 框架下实现多个子框架的组合, 这些子框架之间彼此可以独立, 也可以使用其它的框架方案加以替代, Spring 希望提供 one-stop shop的框架整合方案。

struts2国际化配置

前提条件:strut2的必须架包已经引入,struts2的配置文件全部配置完成 1.首先创建一个struts.properties在src目录下,服务器启动时候会自动加载该文件,在这个文件中写入struts.custom.i18n.resources=globalMessages,服务器会自动选择前缀为globalMessages资源文件。(或者你在你的struts.xml文件中添加服务器加载struts.xml的时候会加载国际化资源文件); 2.在src目录下创建资源文件英文globalMessages_en.properties 中文globalMessages_zh.properties。globalMessages_en.properties 文件内容为home=home globalMessages_zh.properties文件内容为home=¥u9996¥u9875 3.在页面端获得资源文件信息。<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> My JSP 'test.jsp' starting page struts2的国际化分三种情况 1.前台页面的国际化, 2.Action类中的国际化, 3.配置文件的国际化。 首先指定全局的国际化资源文件: 在配置文件struts.xml中引入 (注意位置)

STRUTS2模拟(答案)

STRUTS2模拟测试(开卷——定时90分钟) 一、填空题 1.Struts2框架由___Struts1________和____WebWork_______框架发展而来。(Struts&WebWork ) 2.Struts2以___WebWork______为核心,采用____拦截器_______的机制来处理用户的请求。(WebWork,拦截器)3.构建Struts2应用的最基础的几个类库是struts-core-2.1.6.jar___________、__xwork-2.1.2.jar_________、__ognl-2.6.11.jar_________ 、_freemarket-2.3.13、_commons-logging-1.0.4.jar_________以及 ___commons-fileupload-1.2.1.jar________。 4.Struts2中的控制器类是一个普通的_____class______。Class 5.如果要在JSP页面中使用Struts2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为_<%@ taglib prefix=”s” uri=”/struts-tags”%>__________。<%taglib uri="/struts-tags" prefix="s"%> 6.在Struts2表单标签库中,表单标签为___________。 7.ActionSupport类实现了____Action_______接口和_Validateable__________等接口。 8.通过控制器类中的___validate()________方法来输出校验错误信息。 二、选择题 1.不属于Action接口中定义的字符串常量的是_____B______。B A.SUCCESS B.FAILURE C.ERROR D.INPUT 2.在控制器类中一般需要添加相应属性的____A_______和____C_______。AC A.setter方法 B.as方法 C.getter方法 D.is方法 3.控制器需要在____B_______配置文件中进行配置。B A.web.xml B.struts.xml C.struts2.xml D.webwork.xml 4.不属于Struts 2表单标签库的是_____D______。D A. B. C. D.