Servlet的请求转发和重定向转发

servlet对应的网页什么都没有;
out.println("把文字输出到浏览器中");就是给Servlet对应的页面源码
out.println("");让源码一行一行的显示

才是实现换行

改变Servlet初始化的时间
服务器启动时自动初始化:
在改Servlet的配置时,在标检中添加1

HttpServletRequest接口:
封装了服务器返回给客服端的响应信息,通过它来操作返回给客服端的响应信息
Servlet程序通过HttpServletResponse对象是servlet程序和Servlet引擎进行通信的接口
servlet程序通过HttpServletResponse对象响应正文传递给servlet引擎,再由servlet引擎将正文输出到客服端



请求转发----服务器内部跳转
代码:
request.getRequestDispatcher("/跳转页面").forward(request, response);
return;
例子:
request.getRequestDispatcher("/chenggong.jsp").forward(request, response);
return;


Servlet的请求转发和重定向转发_第1张图片

Servlet的请求转发和重定向转发_第2张图片

Servlet的请求转发和重定向转发_第3张图片

Servlet的请求转发和重定向转发_第4张图片




‘/’表示项目的根目录
不加‘/’表示当前Servlet所在的目录
因为转发后还会执行下面的代码,所以让return;来结束该方法;




浏览器只发出一次请求----即该servlet
请求转发是把"/转到的页面"的源代码,
复制给servlet所在对应的页面所在地址栏是该servlet的地址


请求重定向

代码:
response.sendRedirect("/项目名/跳转页面");
return

例子:
response.sendRedirect("http://www/baidu.com");
return;
Servlet的请求转发和重定向转发_第5张图片
Servlet的请求转发和重定向转发_第6张图片

response.sendRedirect("/Text002/chenggong.jsp");

return;

Servlet的请求转发和重定向转发_第7张图片

Servlet的请求转发和重定向转发_第8张图片

‘/’表示服务器的根目录(端口号之后)
不加‘/’表示当前servlet所在目录
因为重定向后还会执行下面的代码,所有让return;来结束该方法





浏览器只发出两次请求----即该servlet和"/项目名/转到的页面"地址(自动发出该次请求)
请求重定向是把"/项目名/转到的页面"的地址发给浏览器,让浏览器进行第二次请求,所有地栏是"/项目名/转到的页面"的地址





请求重定向可以跳到任意的路径
请求转发只能跳到本项目中的路径

你可能感兴趣的:(Servlet的请求转发和重定向转发)