res.sendRedirect(),是重定向,相当于两次请求,两次相应,地址栏会发生变化。
在实际使用中,重定向不能传指。也就是在requset中储存的值在跳转到另外一个页面后,在目标页面提取不出来。
req.getRequestDispatcher().forward(req,res)是跳转,转发,前后页面共同使用一个request,地址栏没变化,等于一次请求两次相应,
实际应用中你在上一个页面储存在request中的值在跳转到目标页面后在目标页面仍然可以request.getAttribute();这个方法取出来。
一般来说转发forward在本服务器内部使用。
重定向sendRedirect一般在外部服务器使用。(客户端向服务器端发送请求 收到服务器端响应的状态为302 客户端会取location里面的值即本地浏览器会帮你跳到这个指定的值里面去)