- 浏览: 1064081 次
- 性别:
- 来自: 天津
文章分类
- 全部博客 (314)
- java 技术 (45)
- Java Util (3)
- Struts2 学习笔记 (23)
- MySql@数据库 (18)
- Oracle@数据库 (4)
- sqlserver@数据库 (20)
- Hibernate配置及应用 (7)
- 基础学习笔记@javaScript (24)
- 常用应用实例@javaScript (41)
- 网页设计 (20)
- bug (13)
- 总结 (4)
- eclipse应用 (23)
- tomcat设置及问题 (15)
- SWFUplaod学习笔记 (7)
- C# (5)
- PPT经验技巧 (8)
- 心情随笔 (3)
- 其他 (19)
- jquery (4)
- sping (1)
- json相关 (2)
最新评论
-
流年已逝_奋斗不止2013:
很有用,谢谢!
HQL select 总结 -
qq_31945283:
完美解决了我的难题,谢谢
四、struts2+swfUpload例子二 -
qq_31945283:
...
四、struts2+swfUpload例子二 -
sunbingrun:
集成到我的项目里, 居然post_params: {&quo ...
三、struts2+swfUpload简单例子 -
flyarun:
牛B ,这种人就是我的偶像
四、struts2+swfUpload例子二
Struts 2的基本配置
前面大致了解了Struts 2框架的基本内容,但这些基本内容都必须建立在Struts 2的配置文件基础之上,这些配置文件的配置信息也是Struts 2应用的核心部分。
3.5.1 配置web.xml文件
任何MVC框架都需要与Web应用整合,这就不得不借助于web.xml文件,只有配置在web.xml文件中Servlet才会被应用加载。
通常,所有的MVC框架都需要Web应用加载一个核心控制器,对于Struts 2框架而言,需要加载FilterDispatcher,只要Web应用负责加载FilterDispatcher,FilterDispatcher将会加载应用的Struts 2框架。
因为Struts 2将核心控制器设计成Filter,而不是一个普通Servlet。故为了让Web应用加载FilterDispacher,只需要在web.xml文件中配置FilterDispatcher即可。
配置FilterDispatcher的代码片段如下:
正如上面看到的,当配置Struts 2的FilterDispatcher类时,可以指定一系列的初始化参数,为该Filter配置初始化参数时,其中有3个初始化参数有特殊意义:
— config:该参数的值是一个以英文逗号(,)隔开的字符串,每个字符串都是一个XML配置文件的位置。Struts 2框架将自动加载该属性指定的系列配置文件。
— actionPackages:该参数的值也是一个以英文逗号(,)隔开的字符串,每个字符串都是一个包空间,Struts 2框架将扫描这些包空间下的Action类。
— configProviders:如果用户需要实现自己的ConfigurationProvider类,用户可以提供一个或多个实现了ConfigurationProvider接口的类,然后将这些类的类名设置成该属性的值,多个类名之间以英文逗号(,)隔开。
除此之外,还可在此处配置Struts 2常量,每个<init-param>元素配置一个Struts 2常量,其中<param-name>子元素指定了常量name,而<param-value>子元素指定了常量value。
在web.xml文件中配置了该Filter,还需要配置该Filter拦截的URL。通常,我们让该Filter拦截所有的用户请求,因此使用通配符来配置该Filter拦截的URL。
下面是配置该Filter拦截URL的配置片段:
配置了Struts 2的核心FilterDispatcher后,基本完成了Struts 2在web.xml文件中的配置。
如果Web应用使用了Servlet 2.3以前的规范,因为Web应用不会自动加载Struts 2框架的标签文件,因此必须在web.xml文件中配置加载Struts 2标签库。
配置加载Struts 2标签库的配置片段如下:
在上面配置片段中,指定了Struts 2标签库配置文件物理位置:/WEB-INF/struts- tags.tld,因此我们必须手动复制Struts 2的标签库定义文件,将该文件放置在Web应用的WEB-INF路径下。
如果Web应用使用Servlet 2.4以上的规范,则无需在web.xml文件中配置标签库定义,因为Servlet 2.4规范会自动加载标签库定义文件。
提示 Struts 2的标签库定义文件包含在struts2-core-2.0.6.jar文件里,在struts2-core-2.0.6.jar文件的META-INF路径下,包含了一个struts-tag.tld文件,这个文件就是Struts 2的标签库定义文件,Servlet 2.4规范会自动加载该标签库文件。
对于Servlet 2.4以上的规范,Web应用自动加载该标签库定义文件。加载struts-tag.tld标签库定义文件时,该文件的开始部分包含如下代码片段:
因为该文件中已经定义了该标签库的URI:struts-tags,这就避免了在web.xml文件中重新定义Struts 2标签库文件的URI。
前面大致了解了Struts 2框架的基本内容,但这些基本内容都必须建立在Struts 2的配置文件基础之上,这些配置文件的配置信息也是Struts 2应用的核心部分。
3.5.1 配置web.xml文件
任何MVC框架都需要与Web应用整合,这就不得不借助于web.xml文件,只有配置在web.xml文件中Servlet才会被应用加载。
通常,所有的MVC框架都需要Web应用加载一个核心控制器,对于Struts 2框架而言,需要加载FilterDispatcher,只要Web应用负责加载FilterDispatcher,FilterDispatcher将会加载应用的Struts 2框架。
因为Struts 2将核心控制器设计成Filter,而不是一个普通Servlet。故为了让Web应用加载FilterDispacher,只需要在web.xml文件中配置FilterDispatcher即可。
配置FilterDispatcher的代码片段如下:
<!-- 配置Struts 2框架的核心Filter --> <filter> <!-- 配置Struts 2核心Filter的名字 --> <filter-name>struts</filter-name> <!-- 配置Struts 2核心Filter的实现类 --> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher </filter-class> <init-param> <!-- 配置Struts 2框架默认加载的Action包结构 --> <param-name>actionPackages</param-name> <param-value>org.apache.struts2.showcase.person</param-value> </init-param> <!-- 配置Struts 2框架的配置提供者类 --> <init-param> <param-name>configProviders </param-name> <param-value>lee.MyConfigurationProvider</param-value> </init-param> </filter>
正如上面看到的,当配置Struts 2的FilterDispatcher类时,可以指定一系列的初始化参数,为该Filter配置初始化参数时,其中有3个初始化参数有特殊意义:
— config:该参数的值是一个以英文逗号(,)隔开的字符串,每个字符串都是一个XML配置文件的位置。Struts 2框架将自动加载该属性指定的系列配置文件。
— actionPackages:该参数的值也是一个以英文逗号(,)隔开的字符串,每个字符串都是一个包空间,Struts 2框架将扫描这些包空间下的Action类。
— configProviders:如果用户需要实现自己的ConfigurationProvider类,用户可以提供一个或多个实现了ConfigurationProvider接口的类,然后将这些类的类名设置成该属性的值,多个类名之间以英文逗号(,)隔开。
除此之外,还可在此处配置Struts 2常量,每个<init-param>元素配置一个Struts 2常量,其中<param-name>子元素指定了常量name,而<param-value>子元素指定了常量value。
在web.xml文件中配置了该Filter,还需要配置该Filter拦截的URL。通常,我们让该Filter拦截所有的用户请求,因此使用通配符来配置该Filter拦截的URL。
下面是配置该Filter拦截URL的配置片段:
<!-- 配置Filter拦截的URL --> <filter-mapping> <!-- 配置Struts 2的核心FilterDispatcher拦截所有用户请求 --> <filter-name>struts</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
配置了Struts 2的核心FilterDispatcher后,基本完成了Struts 2在web.xml文件中的配置。
如果Web应用使用了Servlet 2.3以前的规范,因为Web应用不会自动加载Struts 2框架的标签文件,因此必须在web.xml文件中配置加载Struts 2标签库。
配置加载Struts 2标签库的配置片段如下:
<!-- 手动配置Struts 2的标签库 --> <taglib> <!-- 配置Struts 2标签库的URI --> <taglib-uri>/s</taglib-uri> <!-- 指定Struts 2标签库定义文件的位置 --> <taglib-location>/WEB-INF/struts-tags.tld</taglib-location> </taglib>
在上面配置片段中,指定了Struts 2标签库配置文件物理位置:/WEB-INF/struts- tags.tld,因此我们必须手动复制Struts 2的标签库定义文件,将该文件放置在Web应用的WEB-INF路径下。
如果Web应用使用Servlet 2.4以上的规范,则无需在web.xml文件中配置标签库定义,因为Servlet 2.4规范会自动加载标签库定义文件。
提示 Struts 2的标签库定义文件包含在struts2-core-2.0.6.jar文件里,在struts2-core-2.0.6.jar文件的META-INF路径下,包含了一个struts-tag.tld文件,这个文件就是Struts 2的标签库定义文件,Servlet 2.4规范会自动加载该标签库文件。
对于Servlet 2.4以上的规范,Web应用自动加载该标签库定义文件。加载struts-tag.tld标签库定义文件时,该文件的开始部分包含如下代码片段:
<taglib> <!-- 定义标签库的版本 --> <tlib-version>2.2.3</tlib-version> <!-- 定义标签库所需的JSP版 --> <jsp-version>1.2</jsp-version> <short-name>s</short-name> <!-- 定义Struts 2标签库的URI --> <uri>/struts-tags</uri> ... </taglib>
因为该文件中已经定义了该标签库的URI:struts-tags,这就避免了在web.xml文件中重新定义Struts 2标签库文件的URI。
发表评论
-
struts2中各个jar包作用
2017-07-07 11:37 705Struts2.3.4 所需的Jar包及介绍 J ... -
struts2标签的默认主题
2017-05-08 11:46 708Struts2默认的theme是xhtml,这可以从Strut ... -
struts2 漏洞分析与防护方案 CVE-2017-5638 S2-045 除了升级外还是有修复方案的
2017-03-23 10:52 981【IT168 评论】关注网络 ... -
struts2 date标签(数据标签)
2015-11-02 13:43 952date标签: date标签 用于格式化输入一个日期,还可以计 ... -
struts2中if标签中字符串比较的正确写法
2013-01-09 13:40 3024错误写法: <s:if test="aStri ... -
struts2 <s:iterator>遍历Map的多种方法
2012-12-11 13:18 26344struts2 遍历Map的多种方法 主要针对以下几种情况 ... -
struts2 标签 (取)保留几位小数(保留2位小数、保留4位小数)、日期类型转换处理方
2012-08-12 11:34 5289一、Struts2 国际化配置文件中添加如下配置: #保留两位 ... -
struts2的几种选择标签
2011-05-04 11:46 2156学习struts2已经很长时间了,一直觉得他的标签很好用,下面 ... -
struts2 标签 页面数据处理
2009-08-25 12:56 18061、输出session中的值 a. <s:prop ... -
struts2 optiontransferselect标签使用中的问题
2009-08-09 15:28 5226struts2 的优点之一便是 ... -
struts2+spring+hibernate整合配置
2009-04-22 10:24 1879struts2+spring+hibernate 配置: 1 ... -
struts2+spring+hibernate整合时所需的jar包
2009-02-17 09:13 14404struts2.1.6 支持jar包 xwork-2.1 ... -
关于Struts2中visitor校验器的解决方法
2009-01-09 09:11 1536这段时间重新开始拾起JAVA的学习,也是为了以后的工作打算,积 ... -
关于Struts2的文件上传
2008-09-03 11:36 3888在使用struts处理文件上传的时候往往会遇 ... -
Struts2插件
2008-06-21 16:23 2143Struts2插件 从理论上讲,Struts ... -
struts2配置-struts.pro
2008-06-21 16:22 1587struts.properties配置文件 ... -
struts2配置-struts.xml
2008-06-21 16:17 4279struts.xml配置文件 Struts ... -
Struts2的基本流程
2008-06-21 16:05 3288大致上,Struts 2框架由3 ... -
在eclipse中开发Struts2
2008-06-21 16:04 4028创建web应用(使用MyEclipse) 一、在Eclips ... -
创建Web应用
2008-06-21 15:57 1376!!提醒 对于IDE工具,业内有一个说法:IDE工具会加快高 ...
相关推荐
### Struts框架中struts-config.xml文件配置详解 #### 一、引言 在Java Web开发领域,Struts是一个非常重要的MVC(Model-View-Controller)框架,它极大地简化了Web应用程序的开发过程。而在Struts框架中,`struts...
同时,Struts的配置文件(struts-config.xml或struts2的struts.xml)也需要进行相应的调整,引入Spring的插件和配置信息。 `springframework-license.txt`文件则包含了Spring框架的许可协议,它规定了软件的使用、...
Struts 是一个基于 Model-View-Controller (MVC) 设计模式的Java Web框架,它使得开发者能够更方便地构建动态、数据驱动的Web应用程序。`struts-config.xml`是Struts框架的核心配置文件,它定义了应用的各个组件及其...
在实际开发中,为了使用这个插件,你需要将`struts2-json-plugin-2.3.8.jar`文件放入项目的类路径(classpath)下,然后在Struts2的配置文件(通常为struts.xml)中启用JSON插件。在Action类中,定义返回JSON数据的...
### Struts struts-config.xml配置详解 #### 一、引言 在Java Web开发领域,Struts框架一直是构建MVC架构应用的重要工具之一。而`struts-config.xml`配置...希望本文能帮助读者更好地掌握Struts配置文件的相关知识。
Struts的配置文件通常命名为struts-config.xml,它是整个Struts应用的核心配置文件,通过定义一系列的XML元素来设定框架的不同功能和行为。下面将详细介绍struts-config.xml中8个主要配置元素的功能和使用方法。 1....
3. **struts2-config-browser-plugin.jar** - 用于在Web应用中浏览器查看Struts配置的插件。 4. **xwork-core.jar** - XWork框架是Struts2的基础,包含了Action、Result、Interceptor等概念的实现。 5. **ognl.jar**...
5. **简化配置**:通过插件,开发者不再需要在struts.xml或web.xml中显式配置Action的类名和实例,只需在Spring配置文件中定义Bean即可。 6. **提高代码可测试性**:由于Action由Spring管理,可以更容易地进行单元...
Struts-config.xml 配置文件详解 Struts-config.xml 是 Struts 框架的主要配置文件,用于配置 Struts 应用程序的...通过了解 Struts-config.xml 文件的结构和配置方式,可以更好地使用 Struts 框架开发 Web 应用程序。
4. **配置管理(Configuration Manager)**:Struts2的配置管理器负责读取配置文件(如struts.xml),并将配置信息加载到内存中。这部分代码主要位于`com.opensymphony.xwork2.config`包下,包括`Configuration`接口...
1. **package**:这是Struts2配置的基本单元,可以包含多个动作(action)、拦截器(interceptor)和结果(result)。每个package都有一个namespace,用于区分不同功能或模块。 2. **action**:定义了一个用户交互...
使用Struts 1.3.8时,开发者需要配置web.xml和struts-config.xml,定义ActionServlet、Action、ActionForm等元素。此外,还需要编写ActionForm类,实现业务逻辑的Action类,以及使用JSP和Struts标签创建用户界面。 ...
3. `struts2-config-browser-plugin.jar`:此插件提供了一个Web界面,用于浏览和编辑Struts2的应用配置,方便开发者调试和管理配置。 4. `xwork-core.jar`:XWork是Struts2的基础,提供了许多基础的OOP(面向对象...
Struts2 JSON Plugin是Apache Struts框架的一个...通过配置"struts-plugin.xml",使用自定义的TLD标签,以及利用提供的类和接口,开发者可以有效地集成JSON支持到他们的Struts2应用中,提升Web应用的动态性和交互性。
3. **配置管理**:Struts 2允许通过XML或注解来配置Action、结果类型、URL映射等,使得应用的配置更为灵活。 4. **表达式语言(OGNL)**:Struts 2使用OGNL(Object-Graph Navigation Language)作为默认的表示层...
2. **web-app_2_4.dtd** 或 **web-app_2_5.dtd**:定义了`web.xml`的元素和属性,这是Servlet容器用来配置Web应用程序的文件。 在使用Struts 1.2.9进行开发时,你需要将这些jar包添加到项目的类路径中,以便编译和...
为了设置Struts2环境,开发者需要在web.xml中配置Struts2的前端控制器Filter,比如`<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>`。然后,创建Action类、...
- 配置Web.xml以启用Struts2过滤器。 - 创建视图页面,如JSP,使用Struts2标签库。 通过深入学习和实践,开发者可以充分利用Struts2的优势,构建高效、可维护的Web应用。不过,值得注意的是,尽管Struts2在过去的几...
Struts2的Spring插件会在Struts配置文件(如struts.xml)中定义一个`<package>`,包含`<interceptors>`和`<default-interceptor-ref>`元素,这样Struts2就会知道如何与Spring协作,将Action实例化和依赖注入交给...
- `WEB-INF/web.xml`:Web应用的部署描述符,配置Struts2的前端控制器Servlet。 - `struts.xml`:Struts2的配置文件,定义Action和相关配置。 - `src/main/java`:存放Action类和其他Java源代码。 - `src/main/...