1.首先要注意以下几个版本的匹配问题,idea版本与maven版本(不推荐用2020的,bug太多,我用的2019.1,maven不要版本太高,我3.9换成了3.5),mysql版本与jdbc驱动版本,servlet依赖的版本(2.5和3.0),数据库连接池的版本,这些版本不同都会导致出bug,报错,各种很烦人又难以查找的bug
2.如果数据库测试连接失败了,看一下这里
大概率是你的默认的版本有问题,之前这里有问题一直在调,改jdbcurl,换驱动,换版本都不行,后来发现是这里的问题
3. web路径:
不以/开始的相对路径,找资源是以当前资源的路径为基准,经常容易出问题
而以/开始的相对路径,是以服务器的路径为标注的(http://localhost:3306),需要加上项目名
http://localhost:3306/crud
4.数据库连接因为版本导致的问题还有,如果控制台log提示你time zone有异常是因为,数据库版本低的时候会导致时区不一致的问题,需要在你的数据库配置文件的jdbcurl加上一些参数characterEncoding=utf8&serverTimezone=UTC&allowMultiQueries=true,如果你是在xml文件直接写,不是引入的,需要注意格式,xml里&需要转义,格式为&;注意这一点
5.感觉自己独立完成一个麻雀虽小,五脏俱全的小项目,发现真正麻烦的还是写配置文件,即使是完全注解也差不多,都挺麻烦的,也很容易出错,而且mybatis逆向替你弄好了,然后自己想用其他查询还得自己改mapper文件,service,dao层这块基本没啥工作量,反倒是一直在写前端页面的各种显示逻辑,原本是用pagehelper返回页面很方便,后来改成ajax异步请求之后,一直在写各种js函数,改代码,特别繁琐,而且经常由于服务器或者是缓存,网速等玄学问题,可能你的代码并没有错,但是运行不出来,改了半天不知道为啥,后来转回来发现是他自己抽风了,唉~前期配置45%工作量,写页面代码45&工作量,后端基本只要配置好,打通数据库之后基本没啥内容了,但是从头到尾做完之后也算是了解有了新的体会和认知,也许是在功能不够复杂,代码量不够大的时候体现不太出来框架的快捷方便,反倒是有点前期起一个框架,写配置,单元测试造了一个大炮,结果只用来干了打小鸟的活儿
6