转发路径下的反斜杠,文件系统中的反斜杠;struts中的servletpath路径与springmvc中servlet请求路径不一样

时间:2021-06-27 14:46:17

1、文件系统下的反斜杠:

(1)绝对目录,它以"/"为起始字符,代表从根目录下开始寻找给出的目录,如/c:/java

(2)相对路径,它以不带“/”的目录名表示,表示以当前Java程序正在运行的目录作为起始目录来寻找给出的目录。如java/classes。在相对路径中,有一些特定的字符,可以代表特的的目录,比如,“.”代表当前目录,“..”代表当前目录的上一级目录。在网上很多给出的例子中,就是利用"."作为目录名,构造File对象的实例,然后通过File对象的方法来获取当前程序运行的目录。

2、再次解析:

1)、客户端的绝对地址都是相对于服务器根目录(http://host:port/);
2)、服务器端的绝对地址指的是相对于你的web应用的地址http://host:port/应用名;
3)、request.getRequestDispatcher(address)是服务器端的转发;所以request.getRequestDispatcher(“/”)就是http://host:port/应用名;相对路径就是当前目录
4)、重定向是客户端的重定向



$('.imgCode').attr('src', "sys/login/cHeckCode.do"),这个没加反斜杠,是客户端的相对路径,那就是从当前目录算,而这所有都是看编译后的文件所在的路径,编译后的文件路径如下:转发路径下的反斜杠,文件系统中的反斜杠;struts中的servletpath路径与springmvc中servlet请求路径不一样,logindjk.jsp,与web-inf是同级,web-inf下的classes下是controller的所在路径,这时候在springmvc中已经配置过了
<context:component-scan base-package="com.tykj.djksk" />,所以它会自动扫描这个文件夹下的所有东西,这时候就
找到了匹配的controller了

3、struts的servletpath与springmvc中的servletpath的路径区别
1)、struts中servletpath路径的层级是通过在package设置namespace来处理的,这样才会在
出现action重名的情况下区分开来
2)springmvc中的servletpath更像是文件系统中的路径存在,有严格意义的层级
3)在js文件中出现的action,它的层级以引用此文件的页面所在的路径为准
4).是当前目录,也就是所在的文件夹,假如wrygl文件夹下有wyr.jsp,在此jsp文件中取到的当前目录就是
wrygl文件夹