程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-06(2)

【Servlet】服务端跳转和客户端跳转(转发和重定向)

发布于2021-06-12 14:20     阅读(408)     评论(0)     点赞(19)     收藏(1)


业务方法描述

login.html界面的表单中会提交账号和密码两个属性,在doPost方法中判定,然后跳转到不同的页面中去。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("UTF-8");
    String name = request.getParameter("name");
    String password = request.getParameter("password");

    if (name.equals("admin") && password.equals("123")) {
        // 服务端跳转
        request.getRequestDispatcher("success.html").forward(request, response);
        // 客户端跳转
		// response.sendRedirect("success.html");
    } else {
		// 服务端跳转
        request.getRequestDispatcher("error.html").forward(request, response);
        // 客户端跳转
		// response.sendRedirect("error.html");
    }
}

服务端跳转和客户端跳转的区别

1 跳转后url是否改变

服务端跳转后,url不会改变
在这里插入图片描述
客户端跳转后,url会显示跳转的页面名
在这里插入图片描述

2 请求和响应次数

  • 服务端跳转:客户端请求一次,服务端响应一次。
  • 客户端跳转:客户端请求两次,服务端响应两次。

3 是否能站外跳转

  • 服务端跳转:只能站内跳转
  • 客户端跳转:支持站外跳转

4 /代表的路径

  • 服务端跳转:Web 容器中,各个项目是独立存在的,/ 表示当前的 Web 项目的根目录,即:localhost:8080/j2ee_2/
  • 客户端跳转:/表示Web 容器的根路径。即:localhost:8080/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("UTF-8");
    String name = request.getParameter("name");
    String password = request.getParameter("password");
    if (name.equals("admin") && password.equals("123")) {
        // 服务端跳转
//            request.getRequestDispatcher("/success.html").forward(request, response);
        // 客户端跳转
        response.sendRedirect("/j2ee_2/success.html");
    } else {
        request.getRequestDispatcher("error.html").forward(request, response);
//            response.sendRedirect("error.html");
    }
}

客户端跳转中,加上/后,要在地址中添加项目名称,才能成功跳转。

原文链接:https://blog.csdn.net/Awt_FuDongLai/article/details/117747950



所属网站分类: 技术文章 > 博客

作者:哦哦好吧

链接:http://www.javaheidong.com/blog/article/222064/baf2b8e2e855dcc7e0a6/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

19 0
收藏该文
已收藏

评论内容:(最多支持255个字符)