第一个坑:项目中某页面文件js代码一不小心写成了<a href="javasciript:void(0)" .....>,多了一个“i”,这个bug导致调试了很久,chrome浏览器在source选项卡里显示一个失败的红色的"javasciript:void(0)",当时只是觉得这个红色的错误莫名其妙,因为粗看起来是一个经典的js空函数。无奈之下,打开了火狐,火狐直接在地址栏出现了"javasciript:void(0)"的字样,并说它无法理解该地址,由于出现在空荡荡的地址栏,于是一下子就发现了拼写错误,果断改掉,世界重新回到预定轨道了,让人不禁感慨多样性的好处了。。。
第二个坑:经常在一些面试宝典里看到经典的对象相等判断问题,看的时候都能看懂,碰到题也能条件反射般答对,可是在实际应用中总是将前辈的孜孜教诲抛到九霄云外,这不又跳坑了。两个id都是Integer,值很不凑巧的是148,代码中判断相等又是习惯性的写成了==,结果就是不等了,改成equals()就好了。以后写代码,对象的比较一定要慎重。
第三个坑:一个项目从eclipse里删除了,然后又从别的地方导入进来,忘记点击project-clean了,结果启动报错了,org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.XXX.pms.entity.Affix'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.XXX.pms.entity.Affix,找了好久,才发现是eclipse的缓存在作怪,导致tomcat下这些类没有编译。
第四个坑:假如tomcat下同时有xxProject.war和xxProject文件夹,并且xxProject文件夹不是xxProject.war自动unpack出来的,这时候就会导致服务出错。另外若服务器只安装了jre,但tomcat的conf.xml里设置了不能unpack,那么你发布war包上去启动tomcat,就会报错,最后只能妥协,开启了tomcat的unpack。
第五个坑:项目完成后利用eclipse打war包,这时有个为特定版本tomcat优化的选项,倘若勾选了此项,那么很大概率上其他版本tomcat在解压此war包后将很大概率上不能正常运行,因此务必在你确定服务器上tomcat版本和开发着的tomcat版本一致,不能一个是8.0,一个是8.5的。