hibernate查询的时候出现“列名 "&&"无效”的问题

来源:互联网 发布:windows程序设计 chm 编辑:程序博客网 时间:2024/05/16 08:13

查询的时候出现这个问题可能又两种可能,

1.实体类和对应的xml文件不一致,这个要查看数据库中的字段是否有缺少,最主要的就是有外键关系的,是否把多对一和一对多的关系全部对应上了。另外就是多对一的时候如: 

<many-to-one name="staffAdmin" class="com.beauty.entity.StaffAdmin" fetch="select" lazy="false">
            <column name="staffAdminId" not-null="true" />
  </many-to-one>

要加上以上红字的部分。

而一对多的时候就不需要加,如:

<set name="beautyCustomers" inverse="true">
            <key>
                <column name="staffAdminId" not-null="true" />
            </key>
            <one-to-many class="com.beauty.entity.BeautyCustomer" />
 </set>

2,这中可能就是我们代码不规范,查询的时候漏掉一些符号,如:

List list = this.getCommonDAO().list("from Staff o where o.number='" + item.getNumber()+"'");


当我们写这样的时候就出现这个问题了

List list = this.getCommonDAO().list("from Staff o where o.number=" + item.getNumber());

 

查看hibernate SQL语句的时候我们就会发现少了单引号' '

原创粉丝点击