(URL转跳)forward和sendredirect的区别



response.sendRedirect("URL")

相当于服务器要客户端在IR重输入一串地址然后点转向,既客户端的重定向
并且URL会改变

注意:1.这个JSP后面的内容会继续执行,并不会中断
2.前一个JSP页面得到的参数全部丢失

<jsp:forward page="URL" />

是服务器内部的重定向,服务器内部可以有多个转换,而现实在客户端上的则只有一个页面url也不会改变

他可以传递参数

例:

<jsp:forward page="forforward1.jsp">
<jsp:param name="name" value="m" />
<jsp:param name="oldName" value='<%=request.getParameter("name")%>' />
<jsp:param name="roles" value="manager" />
</jsp:forward>

forward和sendredirect的区别

Sendredirect


Forward

是不同的request


虽然是不同的对象,但是,可以取到上一个页面的内容

send后的语句会继续执行,除非return


forward后的语句不会继续发送给客户端

速度慢


速度快

需要到客户端的往返,可以转到任何页面,


服务器内部转换,

地址栏有变化


地址栏没有变化

可以传参数,直接写在url后面


可以传参数

/代表的是http://127.0.0.1/

<%response.sendRedirect("/test/ServletToJSP");%>

<form action="/test/ServletToJSP">

<a href="/test/ServletToJSP">test</a>


/代表的是http://127.0.0.1/test

this.getServletContext().getRequestDispatcher ("/servlet_jsp/ServletUseJsp.jsp")
.forward(req, resp);

并且只能以/开头

常用


常用





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值