我想更新名称为员工的表格中的列(标记)。 基于价值(从部门表中的其他表格中删除)
deptid与Employee表存在多对一的关系。
<many-to-one name="deptId" class="Department" column="deptId" update="true"/>
我编写了一个HQL查询来更新员工的标志值。我想我在下面的代码中犯了一个错误。
public void updateEmployeeTable(Employee emp){
String query = "update " + Employee.class.getName() + " set flag=? "
+ " where deptid = ? ";
Object[] values = new Object[]{"flag value from form", "emp.getDeptId()"};
getHibernateTemplate().update(emp);
}
答案 0 :(得分:0)
你应该传递这样的对象:
Object[] values = new Object[]{flag, emp.getDeptId()};
getHibernateTemplate().bulkUpdate(query, values);