转载:https://blog.youkuaiyun.com/qq_39767955/article/details/82179991
造成错误的原因是:
利用Hibernate批量添加,传入实体类参数,这里是用for循环进行批量添加;每循环一次,需要重新实例化实体类,但是却将实体类实例化放在循环外面
hibernate是面向对象开发的
解决办法:把要进行CRUD操作 的实体对象在for循环里面创建
for(int i=0;i<projectIds.length;i++){
PgContractProject entity = new PgContractProject();//这个对象不能创建在外面
entity.setContractId(contractId);
entity.setLinkStatus("1");
entity.setProjectId(projectIds[i]);
entity.setLastModifierName(user.getUserName());
dao.saveContractProject(entity);
}
PgContractProject entity创建在循环外面的话,每次操作都是针对同一个“entity”对象,这就不对了,引发报错