jpa remove
直接使用em.remove会报错,IllegalArgumentException: Removing a detached instance
即对象处于脱管的状态,使用merge使之被session管理
改写方法如下,
@Overridepublic void delete(En en) {em.remove(em.contains(en)?en:em.merge(en));}
当然也可以只是用merge而不用三元运算符。
但是会导致重新查询一遍再删除。

浙公网安备 33010602011771号