1,命名空间配置
java语言为了避免同名java类的冲突,可以使用包,struts2也存在同名的Action问题,但是struts用命名空间区分同名Action
命名空间的配置格式如下:
<package name="包名" extends="继承的包名" namespace="命名空间名">
例命名空间配置:
<package name="kk" extends="struts-default">
<action name="login" class="LoginAction.LoginAction">
<result name="success">/login/success.jsp</result>
<result name="error">/login/login.jsp</result>
</action>
</package>
<!-- 配置kk1包,继承包kk,包名称空间/kk1 -->
<package name="kk1" extends="kk" namespace="/kk1">
<action name="login" class="LoginAction.kk1.LoginAction">
<result name="success">/login/success.jsp</result>
<result name="error">/login/login.jsp</result>
</action>
</package>
定义了两个包:kk和kk1,其中kk继承了struts-default包,kk1继承了kk包,两个包中定义了LoginAction。包kk没有指定namespace属性,默认值是空,kk1指定了名称空间namespace="/kk1" , 说明用户请求访问该包下的所有Action是,URL应该是名称空间(namespace)+Action.
2,Action的配置
Action是struts2的业务控制器,配置格式如下:
<action name="名称" class="Action类"> </action>
1)name:指定客户端发送请求的地址名称
2)class:指定Action对应的实现类
3)method:指定Action类处理方法名
4) converter:指定Action类型转换器完整类名。
3,结果配置
<result>元素用来为Action的处理结果指定一个或者多个视图,配置逻辑视图与物理视图之间的映射关系。结果配置文件=如下:
<result name="字符串值"></result>
常用属性如下:
1)name:指定Action返回的逻辑视图
2)type:指定结果类型是定向到其他文件,该文件可以试JSp文件或者Action类