SSH学习(二)Struts2核心配置

来源:互联网 发布:卡盟销售官网源码 编辑:程序博客网 时间:2024/06/13 22:39

原文来自搬砖工,如需转载请注明出处


上一篇文章学习了Struts2入门,这篇文章学习Struts2的核心配置

一、struts-default.xml分析

1.struts-default.xml位于struts2-core-2.3.31.jar文件下,一般来说都是struts2-core-版本.jar。不同的版本有不同的包名

2.struts-default.xml是struts的默认配置,取了其中一些示例,如下:

<struts><bean class="com.opensymphony.xwork2.ObjectFactory" name="struts"/>    <bean type="com.opensymphony.xwork2.factory.ResultFactory" name="struts" class="org.apache.struts2.factory.StrutsResultFactory" /><package name="struts-default" abstract="true"><result-types>            <result-type name="postback" class="org.apache.struts2.dispatcher.PostbackResult" />       </result-types><interceptors><interceptor name="alias" class="com.opensymphony.xwork2.interceptor.AliasInterceptor"/></interceptors><interceptor-stack name="basicStack"><interceptor-ref name="deprecation"/></interceptor-stack></package></struts>

1)bean的配置:通过bean的配置实现struts2组件的依赖注入(DI)

2)package的配置:

   a.result的配置:Struts2提供了丰富的result类型,包括jsp、一些模板引擎(freemaker)、velocity以及plaintext

   b.intercept的配置:拦截器是Struts2的核心,几乎大部分的Struts2的实现都是通过拦截器实现的

二、包配置

<package name="example" namespace="/" extends="struts-default"> <action name="login" class="com.study.action.LoginAction"><result name="success">/Success.jsp</result><result name="input">/login.jsp</result></action></package>

1.Struts2包的作用

Struts2框架的核心组件是Action和拦截器,Struts2使用包来管理Action和拦截器。包里面的内容是Action、拦截器和拦截器的引用。配置文件中可以定义多个包。

2.包的属性

1)name:包的名称,其他包可以通过该名称引用该包。(必填

2)extends:表明该包继承其他包,该包继承其他包的action以及拦截器

3)namespace:命名空间,区别同一个包重名的action。如:/admin、/user,它们都有同样的action—login

4)abstract:是否是抽象包,抽象包不能有action的定义

三、bean的配置

<bean class="" name="" scope="" type=""></bean>
bean的常见参数:

   1.class:bean实例的实现类

   2.type:Struts2定义的规范接口

   3.name:bean实例的名称

   4.scope:bean的作用域

:其它参数可参考Struts2的详细介绍

四、常量配置

1.可配置Struts常量的地方:1)struts.xml *常用 2)struts.properties 3)web.xml

2.struts.xml中配置常量:

<constant name="struts.action.extension" value="do"></constant>

3.struts.properties中配置常量

struts.action.extension=do

4.web.xml配置常量

<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class><init-param><param-name>struts.action.extension</param-name><param-value>do</param-value></init-param></filter>
五、包含配置

<include file="xxx.xml"></include>
包含配置就是引用xxx.xml中的配置,这样可以把项目分为模块来开发。例如

<struts><include file="part1.xml"></include><include file="part2.xml"></include><include file="part3.xml"></include></struts> 

2 0
原创粉丝点击