Struts2学习笔记四(result结果类型、防止表单重复提交)

1、struts-default.xml 中result-types 主要常用dispather ,chain,redirect,redirectAction。

2、默认是dispather ,一般的请求转发。显示的url是 action的url

3、redirect,直接转发,相当于回到了客户端,重新发起请求,原来所带request丢失。显示转发后的jsp的url

4、redirectAction 请求,然后重定向

       例如:首先请求带着request,做登录login,然后再重定向(回到客户端)到其他action(做别的事,如list自己的工作),url显示的是list 后面一个重定向的url,可以有效防止表单重复提交

		<action name="login" class="com.yanlei.struts2.LoginAction"><pre name="code" class="html" style="font-size: 13.3333px;"><span style="font-size: 13.3333px; font-family: Arial, Helvetica, sans-serif;">                               			<result name="success" type="</span><span style="font-size: 13.3333px; font-family: Arial, Helvetica, sans-serif;">redirectAction</span><span style="font-size: 13.3333px; font-family: Arial, Helvetica, sans-serif;">"></span>
<param name="actionName">list</param><param name="username">${username}</param><param name="password">${password}</param><param name="usernameAndPassword">${usernameAndPassword}</param></result><result name="input">/login.jsp</result></action>

 

		<action<span style="background-color: rgb(255, 255, 102);"> </span><span style="color:#cc0000;"><span style="background-color: rgb(255, 255, 102);">name="list"</span> </span>class="com.yanlei.struts2.ListAction">
			<result name="success">/action2.jsp</result>
		</action>

           重定向的时候可以通过Param 传参数,${username} 表示login中的参数,传递给listAction, listAction中必须有属性接受这些参数,然后可以接受处理,        然后传递到action2.jsp

5、chain 请求之后继续请求(发生在服务器内部的请求),param是客户端传过去的参数,所以请求都一直没有回来,一直在服务器内部,param自然传不过去。

6、提交表单下 利用struts标签  <s:token></s:token>,客户端服务端生成随机ID,相同者第一次提交,不同则重复提交。

       提交的时候服务器端的ID会变化,客户端的不变;重复提交的时候客户端的没变,但是服务器端的在提交的时候已经变了,所以两个ID不同,则认为重复提交。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值