问题
The List<String> Mylist is org.hibernate.collection.PersistentBag...
and i want to delete this Mylist...
How i can do it??
QriteriaBuilder criteriaBuilder = em.getCriteriaBuilder();
CriteriaQuery<A_entity> criteriaQuery = criteriaBuilder.createQuery(A_entity.class);
criteriaQuery.from(A_entity.class);
Query query = em.createQuery(criteriaQuery);
List<A_entity> queryList = query.getResultList();
for (A_entity a:queryList)
{
if(....)
{
List<String> Mylist = a.func();
???How delete Mylist????
}
}
Thank you very much!!
回答1:
Try deleting elements one by one:
List<String> Mylist = a.getMyList();
em.getTransaction().begin();
for (String element:Mylist){
em.remove(element);
}
em.getTransaction().commit();
_______________________
The Solution (Work to me, thank to "Genzotto"):
List<String> Mylist = a.getMyList();
listStirng.clear();
em.getTransaction().begin();
for (String str : Mylist) {
em.merge(str);
}
em.getTransaction().commit();
来源:https://stackoverflow.com/questions/23920323/how-to-delete-data-from-org-hibernate-collection-persistentbag-hibernate-jpa