(这篇笔记是我回顾错误的碎碎念,不听废话可直接跳到 “问题解决” )
基本环境配置:
首先参考一下我的环境配置:jdk17 + spring-webmvc5.3.18 + tomcat8.5.68
问题描述:
我在跟着黑马程序员的SSM课程做RESTful案例时,遇到了在浏览器访问却无法显示数据的问题。
(注:save那个方法没写,请忽略,只关注getAll就行。)
在浏览器输入地址之后,应显示我在getAll()中定义的两个Book对象的信息,但为什么没有显示呢?
问题溯源:
打开浏览器的开发者工具,再次输入请求,
可以看到,在访问/books时出现了404,我们点开这个错误看一下详细信息,
从详细信息中可见,是 http://locast:8080/books 这个访问路径不正确。正确的路径配置应该是 http://locast:8080/banana03_war/books (注:banana03是我的模块名)。
但为什么黑马课程中不需要加模块名呢,是因为课程中使用的是Tomcat7插件,简化了路径配置写法,而我和你用的是本地Tomcat,需要补全路径。
问题解决:
将 books.html中的 getAll() 相关代码:
getAll() {
axios.get("/books").then((res)=>{
this.dataList = res.data;
});
},
修改为:
getAll() {
axios.get("/bananaa03_war/books").then((res)=>{
this.dataList = res.data;
});
},
修改后如图所示:
解决后效果:
修改后再次访问,数据可成功显示:
用开发者工具查看,能成功访问的路径为我们补全的http://locast:8080/banana03_war/books: