zoukankan      html  css  js  c++  java
  • getContextPath、getServletPath、getRequestURI,getRealPath的区别

    假定你的web application 项目名称为news,你在浏览器中输入请求路径: http://localhost:8080/news/main/list.jsp 

    则执行下面向行代码后打印出如下结果: 
    1、 System.out.println(request.getContextPath()); //可返回站点的根路径。也就是项目的名字 
    打印结果:/news 

    2、System.out.println(request.getServletPath()); 
    打印结果:/main/list.jsp 

    3、 System.out.println(request.getRequestURI()); 
    打印结果:/news/main/list.jsp 

    4、 System.out.println(request.getRealPath("/")); 

          request.getRealPath("/")已经不建议使用。

    getRealPath();

    返回一个字符串,包含一个给定虚拟路径的真实路径。

    struts2中:

    ServletContext ctx=ServletActionContext.getServletContext();

    String path=ctx.getRealPath("/");
    String path1=ctx.getRealPath("/files/view.jsp");

    输出:path为D:Javasoftwareapache-tomcat-7.0.70apache-tomcat-7.0.70webappsstruts2-1

             path1为D:Javasoftwareapache-tomcat-7.0.70apache-tomcat-7.0.70webappsstruts2-1filesview.jsp

    filesview.jsp这部分就是虚拟路径

    D:Javasoftwareapache-tomcat-7.0.70apache-tomcat-7.0.70webappsstruts2-1  为项目的绝对路径

     servlet中:

    private ServletConfig  config;

    public void init(ServletConfig config) throws ServletException {
    this.config=config;}

    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {

    ServletContext ctx=config.getServletContext();
    String temp=ctx.getRealPath("/");
    }


    打印结果:F:Tomcat 6.0webapps ews est 

    注:

    URI=contextPath+servletPath

  • 相关阅读:
    关于loose.dtd和xhtml1transitional.dtd等文档类型定义模型中CSS失效的解决办法。
    JSON扫盲帖+JSON类教程
    jQuery中Ajax事件
    JQuery绑定事件 时如何传递参数
    xml include 另外一个xml文件
    ubuntu 两张网卡时网络设置
    Letcode 题:pow(x,n)
    Java编程语言中sleep()和yield()的区别
    JProfiler与eclipse集成
    zz 字符串相关
  • 原文地址:https://www.cnblogs.com/keyi/p/6232658.html
Copyright © 2011-2022 走看看