Servlet之间的跳转
Servlet之间可以实现跳转,从一个Servlet跳到另一个Servlet,利用Servlet的跳转技术可以很方便的把一块业务模块分开,比如使用后一个Servlet接收用户提交数据,使用另一个Servlet读取数据库,最后跳转到另一个Servlet把处理结果显示出来。这也就是MVC模式(model、view、controller)
MVC:用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
1.转发Forward简介:
在Servlet中如果当前的web资源不想处理请求时,可以通过forward方法将当前的请求传递给其他的Web资源处理,这种方式称为请求转发
![f26dc2ed1249e2276673b55fd38fdfce.png](https://img-blog.csdnimg.cn/img_convert/f26dc2ed1249e2276673b55fd38fdfce.png)
2.重定向Redirect
重定向的简介:
重定向是根据服务器返回的状态码来实现的。客户端浏览器在请求服务器的时候,服务端会返回一个状态码。服务器通过HttpServletResponse的setStatus(int status)方法来设置状态码。如果服务器这个时候返回的状态码是301或302,则浏览器就会到新的网址重新请求该资源。服务器的响应中会带着这个新资源的地址
请求重定向的相关代码:
//设置状态码为302,SCMOVED_TEMPORAILY就是302的静态常量
response.setStatus(HttpServletResponse.SCMOVED_TEMPORAILY)
//在请求头中携带新的资源地址
response.setHeader("Location","http://www.baidu.com")
为了使用方便HttpServletResponse中将setStatus和setHeader这两种方法合并到一起叫做sendRedirect(String location)
3.自动刷新
JSP中实现自动刷新:"<meta http-equiv='refresh' content='3;url=/hello/home.html'>"