对Struts 2.0中的struts.xml配置文件详细说明 3
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
??? "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
??? "http://struts.apache.org/dtds/struts-2.1.dtd">
???? <struts>
????? <package name="org.tstruts2" namespace="/ff" extends="struts-default" abstract="false">
???
????? <action name="td" method="lu" converter="">
???????????? <result name="success">./success.jsp</result>
???????????? <result name="false">./false.jsp</result>
????? </action>
?????
????? </package>
????? </struts>
?
?
这里主要细说一下:action有哪些属性,及个个属性的用处。action主要有 name,method,class,converter 四个属性。
?
name:
name对应form表单中action中的值:如<form action="ff/td.action"? method="post">这个里面的ff是?
???? ???? namespace="/ff" 中的ff;
?
method:
要是不写method的方法,默认执行execute()方法。要是写了就执行写的方法。execute()是Struts2中一个接口Action中的一个方法。
?
class:
你的action来源于那个类,包名+类名;
?
converter:
Converter 是类型转换器主要用于对象之间的转换(这个属性我还没用过???)
?
下面说一下 result?? 中有哪些属性值及作用:
????????? name
????????? 是方法中返回的字符串。
????????? type:????默认值是dispatcher? 用来转向页面,通常处理JSP:如果想详细了解type有哪些类型的话。
?????????????? 请点击这个超链接
?
??
?下面是一些课外的东西。
?
有些时候我们需要一个定义在全局的Result,这个时候我们可以在package内部定义全局的Result,例如:<global-results>?<result name="error">/Error.jsp</result><!-- 如果想了解invalid.token的用处,请点击下面的超链接 -->?<result name="invalid.token">/Error.jsp</result><!-- type="redirect-action"?的例子我还没有做自己做,?-->?<result name="login" type="redirect-action">Logon!input</result></global-results>动态返回结果有些时候,只有当Action执行完璧的时候我们才知道要返回哪个结果,这个时候我们可以在Action内部定义一个属性,这个属性用来存储Action执行完璧之后的Result值,例如:private String nextAction;?public String getNextAction() {??? return nextAction;}?在strutx.xml配置文件中,我们可以使用${nextAction}来引用到Action中的属性,通过${nextAction}表示的内容来动态的返回结果,例如:<action name="fragment" type="redirect-action">${nextAction}</result></action>?上述Action的execute方法返回next的时候,还需要根据nextAction的属性来判断具体定位到哪个Action。?
?
?
?
?
?
?
??????????????