今天把毕设的项目重新跑了一下,结果爆炸,数据查不出来,我坚信程序没问题,因为毕业答辩的时候都跑过了。我就认为是换了个数据库的原因,直接把mysql下面data的数据库文件直接复制过去是不行的,然后就直接重建数据库,结果还是不行,把hibernate打印出来的sql直接拿去mysql下面跑是找的到数据的,我也真的是服了,最后我就把sql语句改了一点一点排查错误,然后就发现用like条件的时候就查不出来,等于也不行,我一度怀疑是不是数据库缓存的关系,改了数据还没生效,重启了n遍,最后脑子终于开窍,丫的可能是编码问题,把like中文的地方改成like'%1%',噢了,你知道吗,噢了,拜服啊。
可是因为太久没写代码了,我就想既然是编码问题,就直接把中文转码一下,转成和数据库一样的,我先是改了Myeclipse的编码改成utf-8,还是查不出来,然后查了数据库的编码gbk的,我就把中文转成gbk,还是不行,无奈百度,最终结束,连接数据库的配置加上?useunicode=true&characterEncoding=utf8