这个问题一直不太明白,以前的理解是"/"代表应用程序的根目录,也就是"http://localhost:8080/"的后边,但是今天写Struts程序,出了个异常,名字不太记得,意思就是 这个地址不能以"/"开头,又让我很纳闷了,大伙帮我解释一下.

解决方案 »

  1.   

    "/" 表示的是http://localhost:8080/test/中的“test”项目,相当于如果在test项目中使用"/"就表示访问的地址为"http://localhost:8080/test" 如果在test2项目中使用表示"http://localhost:8080/test2"
      

  2.   

    1、如果"/"是写在javaScript中,也就是说下载到客户端的时候,"/"表示的是服务器的根目录,而不是具体某个项目(比如你的test1)的根目录2、如果"/"是写在在服务器端执行的代码内部,"/"表示的是服务器的那个特定项目的根目录。请楼下指正
      

  3.   

    一般说来使用了:/后表示的上服务器的根目录。但是struts等框架里边进行了改进,搞成了当前应用程序的根目录。
    如:你服务器为:http://localhost/,应用程序为test;
    你在没有使用任何框架时,使用/的话,就代表:localhost/
    如果你在struts框架中使用 /的话,就代表localhost/test
      

  4.   


    1、如果"/"是写在javaScript中,也就是说下载到客户端的时候,"/"表示的是服务器的根目录,而不是具体某个项目(比如你的test1)的根目录,因为这样要提交的服务器,自然就是服务器的根目录(http://localhost:port/)了。2、如果"/"是写在服务器端执行的代码内部,"/"表示的是服务器的那个特定项目的根目录,因为它直接在服务器的当前项目(假设是test)下执行,自然就是当前的项目的根目录下(http://localhost:port/test/)请楼下指正

      

  5.   

    恩。其实就是用了一种路径的映射。将/映射到/test
    基本上所有的Http Server(tomcat ,jetty)都支持这一点。所以你的理解是没有错的,只是一些框架改了一些配置。可以想一下。如果tomcat下部署了n个工程,当然只能有一个工程映射到根目录"/"下了,其他的还得用/project2,/project3来访问。