SSH学习(二)Struts2核心配置

17 篇文章 0 订阅

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


上一篇文章学习了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> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值