springboot2.0 和 springboot1.0 相比做了比较多的改动,虽说是好的,不过现阶段网上比较多的博客和教程都是基于1.0的版本去写的,对于2.0的介绍比较少,所以碰到了很多坑
Tomcat
首先是Tomcat,springboot1.0支持tomcat8.0以下的版本,这对于之前装过tomcat的人来说就很方便,可以直接应用,但是2.0基于tomcat8.5,而且8.5相较于8,增加实现了JASPIC 1.1 规范,具体内容移步tomcat 8.5 迁移向导
解决办法:
1.觉得麻烦,可以重装,移步官网Apache Tomcat
2.在本机上再部署一个版本的Tomcat,要记得修改端口号。具体可以看另一篇博客查看Tomcat 8.5的多部署,若要搭其他版本的,步骤也大体相似,这里不再赘述。
src的java目录下的xml文件的读取
IDEA不会编译src的java目录下的xml文件
和Eclipse中生成代码不同,如果要用mybatis generator自动生成代码,就必需设置好xml的路径,防止找不到
1.网上的解决方案(虽然我失败了,不过也有可能是Dao忘了加@Mapper注解)
将mapper文件夹放在resources下
然后能被读取,然而我试过之后还是不行,但是建议放在这个目录下。src/main/java 存放的就是java文件 src/main/resources 才是放资源文件的
如果无效或者是还是想把mapper.xml放在 src/main/java 文件夹下,加个配置
在pom.xml文件中添加以下内容
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>mapper/*.xml</include>
</includes>
</resource>
</resources>
</build>
重启项目就可以了
Error Page
thymeleaf - Error resolving template [/user/house], template might not exist or might not be accessible by any of the configured Template Resolvers
解决方法:
1.确认templates 下有目标页面,没有则将页面放进去
2.跳转页面写错了
3.缺少依赖,Thymeleaf使用严格HTML5,若使用非严格的html会报错
spring:
thymeleaf:
mode: LEGACYHTML5
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
</dependency>