java 重定向 绝对路径_JavaWeb【1.4HttpServletResponse类、重定向】

HttpServletResponse类、重定向

Tomcat服务器每次接收到一个请求都会和HttpServletRequest类一样创建一个HttpServletResponse对象,用来设置给客户端回传的响应信息

1.以流的形式向客户端传输数据

public class Web06 extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//解决响应中文乱码问题

resp.setContentType("text/html;charset=utf-8");

//获取字节流

//ServletOutputStream outputStream = resp.getOutputStream();

//获取字符流

PrintWriter writer = resp.getWriter();

writer.write("哈哈哈哈");

}

}

2.重定向

客户端向服务端发送Servlet1程序的请求,Servlet1程序将Servlet2程序的请求地址回传给客户端,让客户端发送Servlet2的请求

public class Response1 extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

String username = req.getParameter("username");

req.setAttribute("key", username);

resp.sendRedirect("http://localhost:8090/myWebApp/res2");

}

}

public class Response2 extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//设置客户端与服务器的编码都为utf-8

resp.setContentType("text/html;charset=utf-8");

PrintWriter writer = resp.getWriter();

writer.write("重定向成功");

}

}

1)重定向相当于客户端发送两次请求

2)地址栏会发生改变

3)不会共享request对象

4)重定向的请求需要填写绝对路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值