程序员们好
我面临一个有关已完成的保存的问题,并在日志中创建以下错误:
> javax.faces.FacesException#{Form292VehicleComponent.saveForm292Vehicle(Form292VehicleComponent.form292Vehicle)}:
> org.springframework.dao.DataIntegrityViolationException: Duplicate
> entry '3a35781b-d2f6-46e7-a72b-605557b29cee' for key
> 'accessareaJustifications_ID'; SQL [n/a]; constraint [null]; nested
> exception is org.hibernate.exception.ConstraintViolationException:
> Duplicate entry '3a35781b-d2f6-46e7-a72b-605557b29cee' for key
> 'accessareaJustifications_ID'
我有两个实体:
表292车辆
访问区域理由
二者关系如下:
在表292车辆实体中:
@DiffIgnore
@JsonIgnore
private List<AccessAreaJustification> accessareaJustifications;
在accessareajustifications中,两个字段仅用于保留form292vehicle的id,没有任何关系。这意味着form292vehicle与列表具有单向的一对多关系。
当应用程序运行时,将创建一个包含每个实体ID的联接表
该表保留所有实体的id,因为一个表单292车辆id可以有多个accessjustifications id。
当用户:续订申请表并执行保存时,会出现此问题。i、 e创建具有不同id的重复应用程序并执行保存。
我认为问题在于hibernateMap。我能有个解决办法吗?
1条答案
按热度按时间tpxzln5u1#
您的列表可能包含重复项。使用
Set
或者确保你没有复制品