小demo创建和运行
2019-06-09 23:37
实验环境:
ubuntu18.04
eclipse
java11
tomcat8.5
springframework
学习内容:运行Spring框架的简单例子
遇到的问题:
Spring的前段分发类找不到
错误截图 java.lang.ClassNotFoundException: ——org.springframework.web.servlet.DispatcherServlet(找不到了,不好意思)
页面无路由映射
大概是mapping 什么什么的,而且多半会发现,不管如何修改Controller里的映射地址,在console控制台中所报告的永远都是同一个映射地址
(注:第二个错误是在第一个错误之后产生的)
那么下面我们来解释一下第一个错误:
未找到该类,我知道的有两个原因:
1.只添加了库,但是没有进行build path操作
2.添加了该库,也进行了build path操作,但是库在文件夹中的位置,与项目导入映射地址不同
第一个原因不细说,上网找一下别的教程,就可以解决了
这里说一下第二个原因
我们看到,每一个包在build path后,包的名字后会有一个路径,这个路径就是项目默认的寻找包的路径,如果而这个地址一般是绝对地址
划重点:
我们的包必须直接放置在该文件夹下,而不能在该文件夹外或者该文件夹下的子文件夹下,
举例:比如我要引入spring-aop-4.2.0RELEASE.jar
那么该包的地址最好是:
/home/yang/eclipse-workspace/springTest/WebContent/WEB-INF/lib/spring-aop-4.2.0RELEASE.jar
这样包所在地址和项目中包的查找引入地址是一样的。这时问题可能解决了,如果未能解决,可以留言,我们交流一下哦
那么接下来第二个问题:
为什么怎样修改Controller的映射地址都对tomcat不起作用
注意:在引入SpringMVC的前提下,
在web.xml的url-pattern中值为 "/" 与 "/*" 时,tomcat的行为是不同的
具体原因,我现在还未清楚,清楚后,我会更新上去
将 “/*” 改为 "/" 就可以正常映射到Controller里定义的地址了