随笔-124  评论-49  文章-56  trackbacks-0

1 配置Action的struts.xml 􁭛􀓊􀇄

<struts>
    
<!-- Struts 2的Action都必须配置在package里-->
    
<package name="default" extends="struts-default">
<!-- 定义一个Logon的Action实现类为lee.Logon -->
<action name="Logon" class="lee.Logon">
<!--配置Action返回input时转入/pages/Logon.jsp页面-->
<result name="input">/pages/Logon.jsp</result>
<!--配置Action返回cancel时重定向到Welcome的Action-->
<result name="cancel" type="redirect-action">Welcome</result>
<!--配置Action返回success时重定向到MainMenu的Action -->
<result type="redirect-action">MainMenu</result>
<!--配置Action返回expired时进入ChangePassword的Action连-->
<result name="expired" type="chain">ChangePassword</result>
</action>
<!--定义Logoff的Action实现类为lee.Logoff -->
<action name="Logoff" class=" lee.Logoff">
<!--配置Action返回success重定向到MainMenu的Action -->
<result type="redirect-action">Welcome</result>
</action>
</package>
</struts>
2 配置Struts 2 全局属性的struts.properties 􁭛􀓊􀇄
#指定Struts 2处于开发状态 􀻘􀑢􁓔􀦥􂢊􁗕
struts.devMode = false
#指定当Struts 2配置文件改变后,Web框架是否重新加载Struts 2配置文件 􄜡􃕂􁭛􀓊
struts.configuration.xml.reload=true
3 编辑Web 应用的web.xml配置文件,配置Struts 2 的核心Filter􀇄
<?xml version="1.0" encoding="GBK"?>
<!-- web-app是Web应用配置文件的根元素,提定Web应用的Schema信息-->
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
="http://java.sun.com/xml/ns/j2ee http://java.sun.
com/xml/ns/j2ee/web-app_2_4.xsd"
>
<!--定义Struts 2的FilterDispatcher的Filter -->
<filter>
<!-- 定义核心Filter的名字-->
<filter-name>struts2</filter-name>
<!--典定义核心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>
<!-- FilterDispatcher用来初始化Struts 2并且处理所有的Web请求-->
<filter-mapping>
<filter-name>Struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
三个有特殊意义的初始化参数:
(1) config:参数值是以(,)号隔开的字符串,每个字符串都是一个xml配置文件的位置。Struts2框架将自动加载这些配置文件。
(2) actionPackages:参数值是以(,)号隔开的字符串,每个字符串都是一个包空间,Struts2框架将扫描这些包空间下的Action类。
(3) configProviders:如果用户需要实现自已的ConfigurationProvider类,用户可以提供一个或多个实现了ConfigurationProvider接口的类,然后将这些类的类名设置成该属性的值,多个类名这间以(,)隔开。
(4) 还可以在些配置常量,其中<param-name>子元素指定常量name,而<param-value>指定常量value.

4 在web.xml文件中配置加载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>
注意:Servlet2.4以上的规范,无需在web.xml文件中配置标签库定义,因为Servlet2.4规范会自动加载该标签库文件。
5 文件结构
Struts2qs
|-WEB-INF
|         |-classes(struts.xml)
|         |-lib(commons-logging.jar􀋈freemarker.jar􀋈ognl.jar􀋈struts2-core.jar􀋈xwork.jar)
|         |-web.xml
|-login.jsp

6 将struts.xml配置文件分解成多个配置文件,模块化管理
<?xml version="1.0" encoding="UTF-8" ?>
<!-- 指定Struts 2 配置文件的DTD信息-->
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"
>
<!--下面是Struts 2配置文件的根元素-->
<struts>
<!--通过include元素导入其他配置文件-->
<include file="struts-part1.xml" />

</struts>

7 包空间的继承
<!--指定Struts 2 配置文件的根元素 -->
<struts>
<!-- 配置名为lee的包空间,继承struts-default包空间-->
<package name="lee" extends="struts-default">

</package>
</struts>
8 可插拔的方式来安装插件
配置struts2与spring框架,只要将struts2-spring-plugin2.06.jar文件放在WEB-INF/lib路径下,Struts2框架将自动加载该文件
posted on 2010-03-05 10:24 junly 阅读(302) 评论(0)  编辑  收藏 所属分类: struts2/struts1.3/JSF

只有注册用户登录后才能发表评论。


网站导航: