shopoperation.html的根目录

来源:4-10 店铺注册之js实现

ellydebug

2018-12-25

图片描述

shopoperation.html的所在的目录是WEB-INF,而不是WEB-INF/html/shop/,这一点很不理解。
这和我之前接触的项目不同,请老师解答下。

写回答

4回答

翔仔

2018-12-27

咱们在spring-web.xml里面

	<!-- 2.静态资源默认servlet配置 (1)加入对静态资源的处理:js,gif,png (2)允许使用"/"做整体映射 -->
	<mvc:resources mapping="/resources/**" location="/resources/" />
	<mvc:default-servlet-handler />
	<bean id="viewResolver"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/html/"></property>
		<property name="suffix" value=".html"></property>
	</bean>

定义了相关的视图解析器,

注意这里的/WEB-INF/html/,相当可以理解为被缺省掉了,此时应该可以看成

└── shop

│   └── shopoperation.html

│   

└── resources

    └── js

        ├── common

        │   └── common.js

        └── shop

            └── shopoperation.js

所以此时./resources/js/shop/shopoperation.js能访问到资源

而../../../resources/js/shop/shopoperation.js能访问到资源就比较神奇了,兴许是这样写就能绕开html静态资源处理,转而直接访问物理路径?这个估计得找到适合的时机去好好研究下才能明白了,同学可以先继续后续的章节的学习

1
2
ellydebug
感谢老师的细致解答~ 除此之外,自己查阅文档发现如下配置mvc:resources的location后,也可以直接按照/resources/js/shop/shopoperation.js进行访问。 ``` ```
2018-12-27
共2条回复

ellydebug

提问者

2018-12-26

经过调试发现使用src='../../../resources/js/shop/shopoperation.js' 和 src='../resources/js/shop/shopoperation.js' 这两种方式,都可以正常访问页面。


我使用的IntelliJ IDEA启动项目。

console中看到项目路径“CATALINA_HOME:         /usr/local/apps/apache-tomcat-9.0.13”


在“/usr/local/apps/apache-tomcat-9.0.13/webapps/o2o”中打印结构如下:


├── WEB-INF

│   ├── classes

│   ├── html

│   │   └── shop

│   │       └── shopoperation.html

│   └── web.xml

├── index.jsp

└── resources

    └── js

        ├── common

        │   └── common.js

        └── shop

            └── shopoperation.js


所以,还是不理解为何 shopoperation.js 的上级目录是“WEB-INFO”,如何跳出WEB-INFO/resources/js/shop/ 这么多层级的呢?


2
1
xiaobaixiao
同学你好,请问`为何 shopoperation.js 的上级目录是“WEB-INFO”,如何跳出WEB-INFO/resources/js/shop/ 这么多层级的呢?`,你弄清楚原理了吗?
2019-01-14
共1条回复

慕雪7046729

2019-05-25

可以用src='/o2o/resources/js/shop/shopoperation.js'绝对路径访问js,

但是../../../resources/js/shop/shopoperation.js没用

0
0

翔仔

2018-12-26

同学好,同学在点击Eclipse server启动项目的时候,会在console里面看到项目发布的路径,根据这个路径去到发布项目的实际目录里面看看项目的最终结构就会比较清楚了

0
1
ellydebug
直接回复内容,格式不方便阅读,已添加到回答里面,烦请老师细致解答~
2018-12-26
共1条回复

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程