指令牌,解决重复提交的问题。
通过设置html文件来访问jsp文件,在html文件里加上action,在action里加上savetoken动作,在jsp文件的action里验证istokenvalid。 验证之后是指令拍失效resettoken。
上传组件,可以改变组件的名字。
this.getServlet().getServletContext().getRealpath("/").取得绝对路径
forwardaction
把jsp文件放入web-inf中,在web-inf外设置一个html文件,通过设置<a href="sw.do">press here</a>
<action path="/sw" type="org.apache.struts.actions.ForwardAction" parameter="/WEB-INF/Hello.jsp">
</action>
dispatchaction解决action过多的问题
在jsp文件的form表单里,添加一个hidden组件,设置一个name属性,一个value属性。然后再struts-config.xml里面的对应的action里添加一个parameter属性,值为name属性。然后把action里的execute方法改成value属性。这样.do文件就会自动找到value属性方法。这样,就实现了靠hidden的属性来区分运行的方法。可以有多个方法。
dynaActionForm解决form过多的问题
在配置文件中设置
<form-bean name="mldnForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="name" type="java.lang.String"/>
<form-property name="password" type="java.lang.String"/>
</form-bean>
则form表单验证不必出现了
另一个问题,dynaactionform没法做验证.
这就需要struts提供的一个验证框架validate
1.增加一个form,选择dynavalidatorform,