Servlet(2)

1.转发页面

  • a. 获得转发器对象
    RequestDispatcher requestDispatcher = request.getRequestDispatcher(目标路径);
  • b. 进行转发操作(将request和response需要传递过去)
    requestDispatcher.forward(request,response);

2.共享数据

  • 应用域(ServletContext):数据共享范围是整个web应用
  • 请求域(HttpServletRequest) :数据共享的范围是本次请求,当响应结束了,请求也结束
    setAttribute(String key,Object value);
    getAttribute(String key)
    removeAttribute(String key)

3.HttpServletResponse

  • ① 通过输出流将响应数据输出给客户端
    PrintWriter writer = response.getWriter();
    writer.write(“<h1>success</h1>”);
  • ② 可以设置响应的乱码(添加响应头的方式)
    response.addHeader(“Content-Type”,“text/html;charset=utf-8”);
    简写:response.setContentType(“text/html;charset=utf-8”);
  • ③ 重定向
    页面跳转的主要手段之一
    a. 重定向至另一个Servlet
    response.sendRedirect(“second”);
    b. 重定向至页面
    response.sendRedirect(“admin.html”);
    当发送到firstServlet请求中的请求参数,SecondServlet是否能获取到?
    取不到:因为发送了第二次请求(第一次请求中的请求参数和第二次请求毫无关系)
    重定向能否使用请求域共享数据?
    不可以

4.请求乱码

    get请求:tomcat8已经处理好了
    post请求:中文乱码问题
        在所有的获取请求参数之前,设置字符集
        request.setCharacterEncoding("utf-8");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值