在加了type="redirect"后,相当于重新发送一个请求到某一个jsp页面上,请求不包含任何参数,而默认方式是forward,即不产生一个新的请求,包含原来的参数,后遗症是跳转到jsp页面后会保持原来的URL 。这在找办法如何将URL变为***.jsp而不是***.action,而且又能传递参数到JSP中。尝试着用request或者requestScope。
一个下午之后,发现如果用重定向redirect的话(即不能传参)还是不行,如果真的想在URL是JSP,干脆直接调用该JSP,让他自己直接调用ACTION一次然后输出结果。在该JSP标题加入:
<head>
<%
if(request.getAttribute("T_flag")==null)
{
response.sendRedirect ("classify.action");
return;
}
%>
</head>
否则就默认它的URL是ACTION(即form action="***.action"),暂时也没什么坏处。
redirect的好处
一般注册的页面比如说提交到register.action注册完信息以后如果不跳转 用户可能会一直刷新这个页面 如果设计不好的程序 就会一直重复注册
注册完redirect出去 转到别的没有业务处理的页面只给提示一下注册成功 一般还是转去没有action的页面用