这一周在翻新公司的老项目,遇到了一些预想不到的事情. 其中一个是,使用hibernate查询,不同的查询条件,居然都查到同一条记录,感觉奇怪了,开始以为是session的原因: 后来发现是hibernate对主键有要求,看了数据库表设计,惨了,居然没有主键,我丢,好多表都没有主键,当时内心是郁闷的,什么人设计的?后来想想,这都十年前的项目了,十年前这个设计水平,也理解吧. hibernate在数据表所对应的实体类有要求:必须有主键.因为数据表没有主键,于是最初我给其中一个非空字段标记为@Id,后…