请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

shopoperation.html的根目录

图片描述

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

正在回答

4回答

咱们在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 回复 有任何疑惑可以回复我~
  • 提问者 ellydebug #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-12-27 12:18:07
  • 提问者 ellydebug #2
    感谢老师的细致解答~
    除此之外,自己查阅文档发现如下配置mvc:resources的location后,也可以直接按照/resources/js/shop/shopoperation.js进行访问。
    ```
    <mvc:resources mapping="/resources/**" location="/resources/" />
    ```
    回复 有任何疑惑可以回复我~ 2018-12-27 12:20:13
提问者 ellydebug 2018-12-26 11:27:29

经过调试发现使用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 回复 有任何疑惑可以回复我~
  • 同学你好,请问`为何 shopoperation.js 的上级目录是“WEB-INFO”,如何跳出WEB-INFO/resources/js/shop/ 这么多层级的呢?`,你弄清楚原理了吗?
    回复 有任何疑惑可以回复我~ 2019-01-14 10:44:03
慕雪7046729 2019-05-25 21:58:44

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

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

0 回复 有任何疑惑可以回复我~
翔仔 2018-12-26 00:15:56

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

0 回复 有任何疑惑可以回复我~
  • 提问者 ellydebug #1
    直接回复内容,格式不方便阅读,已添加到回答里面,烦请老师细致解答~
    回复 有任何疑惑可以回复我~ 2018-12-26 11:26:51
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信