struts高级,指令牌,上传组件,forwardaction,DispatchAction,DynaActionForm

指令牌,解决重复提交的问题。

通过设置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,

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值