刚开始做java研发总是会遇到面试题,问道java的重定向和转发有什么区别,网上答案很多。不多说,今天偶尔弄了下,有点感触,记录下:
重定向:浏览器地址栏将会直接转想你定义的界面。
写法为:response.sendRedirect("whotakeme.jsp");
struts2中配置(struts1没看,google一下就知道了):<result name="success" type="redirect">,需要知道的就是type类型决定是重定向还是转发。
转发:浏览器地址为url,不会直接跳到你要的路径。
写法为:request.getRequestDispatcher("whotakeme.jsp").forward(request, response);
struts2中配置为:就是将type配置成为转发,转发可以不写type。
一般我感觉在提示什么东西到尾声的时候可以重定向,这样不涉及到数据到发送,如果希望带数据过去还是用转发,这样set的数据,界面才可以get到。
当然现在有很多界面框架,也用不到这种麻烦的东西了,直接就可以返回或则获取。重定向和转发对比网上很多,这个就是记录给自己看看。