zoukankan      html  css  js  c++  java
  • 相对路径和绝对路径

    创建一个web项目,在webroot的目录下新建两个界面

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        
        <title>My JSP 'index.jsp' starting page</title>
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
      </head>
      
      <body> 
      
       <!--
      /doMain.jsp   前台路径: 如果带 /      它的参照路径是 http://localhost:8080/    tomcat服务器的根路径  
       doMain.jsp   前台路径: 如果不带 /     它的参照路径是http://localhost:8080/UrlTest/  web项目的根路径
       -->
        <a href="doMain.jsp">跳转</a>
      </body>
    </html>
    login.jsp页面
    <body>
       <h1>这是处理界面....</h1>
      </body>
    doMain.jsp页面

    在webroot下面新创建一个jsp文件夹,之后再jsp文件夹下面创建两个界面

     <body>
      <%-- 
      这个TestServlet没有增加/    默认的参照路径是 项目根目录 
     --%>
        <a action="TestServlet">跳转</a>
      </body>
    login.jsp页面
    <body>
       <h1>这是jsp文件夹下面处理界面....</h1>
      </body>
    doMain.jsp页面

    创建对应的servlet

    public class TestServlet extends HttpServlet {
    
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            doPost(request, response); // �doPost()
        }
    
        public void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            System.out.println("进入了servlet......");
            /**
             *  /jsp/doMain.jsp 后台路径   加 /    参照路径就是项目的根目录   
             *  request.getRequestDispatcher("/jsp/doMain.jsp").forward(request,
             *        response);
             */
    
            /**
             * 重定向 比较特殊!  因为是客户端的行为,至少两次访问服务器,再第二次访问服务器的时候,就是前台路径了,
             * 这个时候 不能加  /  
             */
            response.sendRedirect("/jsp/doMain.jsp");
    
        }
    
    }
    TestServlet

    ======================解决路径叠加的问题======================

    在webroot下面创建两个界面

    <body>
       <a  href="test/MyServlet">跳转</a>
      </body>
    1.jsp
    <body>
      <%--
        这样会出现问题  
       <a  href="test/MyServlet">跳转</a>
       --%>
       <a  href="${pageContext.request.contextPath}/test/MyServlet">跳转</a>
      </body>
    2.jsp

    一定要修改web.xml中MyServlet的url为  test/MyServlet

    public class MyServlet extends HttpServlet {
    
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            doPost(request, response); // doPost()
        }
    
        public void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            request.getRequestDispatcher("/2.jsp").forward(request, response);
    
        }
    
    }
    MyServlet
  • 相关阅读:
    java多线程(同步与死锁问题,生产者与消费者问题)
    剑指OFFER之跳台阶(九度OJ1388)
    剑指OFFER之二维数组中的查找(九度OJ1384)
    剑指OFFER之旋转数组的最小数字(九度OJ1386)
    我所思考的生活,致半年后的自己
    剑指OFFER之用两个栈实现队列(九度OJ1512)
    剑指OFFER之二维数组中的查找(九度OJ1384)
    剑指OFFER之重建二叉树(九度OJ1385)
    简单的客户机服务器投射模拟
    网络复习之TCP
  • 原文地址:https://www.cnblogs.com/xtdxs/p/7094848.html
Copyright © 2011-2022 走看看