@Override public void detach(StructuredContent sc) { em.detach(sc); } }
@Override public void detachPage(Page page) { em.detach(page); }
@Override public void detach(Object entity) { em.detach(entity); }
@Override public void detach(Serializable entity) { standardEntityManager.detach(entity); }
public void detach(final Object entity) { em.detach(entity); }
@Override public StaticAsset addOrUpdateStaticAsset(StaticAsset asset, boolean clearLevel1Cache) { if (clearLevel1Cache) { em.detach(asset); } return em.merge(asset); }
@Override public void detach(Object entity) { em().detach(entity); }
List<T> queryResult = query.getResultList(); for (T entity : queryResult) { entityManager.detach(entity); results.add(entity);
protected void cleanupFailedPersistenceAttempt(Serializable instance) throws IllegalAccessException { //Remove the entity from ORM management - no further attempts to persist if (getPersistenceManager().getDynamicEntityDao().getStandardEntityManager().contains(instance)) { getPersistenceManager().getDynamicEntityDao().getStandardEntityManager().detach(instance); } //Remove the id field value, if it's set String idFieldName = (String) getPersistenceManager().getDynamicEntityDao().getIdMetadata(instance.getClass()).get("name"); Field idField = FieldUtils.getField(instance.getClass(), idFieldName, true); if (idField == null) { throw ExceptionHelper.refineException(new NoSuchFieldException("Entity " + instance.getClass().getName() + " does not contain id field " + idFieldName)); } idField.setAccessible(true); if (idField.get(instance) != null) { idField.set(instance, null); } }
.getResultList()) { dtos.add(toDTO(person)); entityManager.detach( person );
public interface UserRepositoryCustom { ... void detachUser(User u); ... } public interface UserRepository extends JpaRepository<User, Long>, UserRepositoryCustom { ... } @Repository public class UserRepositoryCustomImpl implements UserRepositoryCustom { ... @PersistenceContext private EntityManager entityManager; @Override public void detachUser(User u) { entityManager.detach(u); } ... }
assertTrue( entityManager.contains( phone )); entityManager.detach( person );
assertTrue( entityManager.contains( phone ) ); entityManager.detach( person );
@Test public void testRefresh() throws Exception { Object p1 = prepareData("1", 10); Object p2 = prepareData("2", 20); Object p3 = prepareData("3", 15); em.persist(p1); em.persist(p2); em.persist(p3); // Check for contains Object pp1 = prepareData("1", 10); Object pp2 = prepareData("2", 20); Object pp3 = prepareData("3", 15); Assert.assertTrue(em.contains(pp1)); Assert.assertTrue(em.contains(pp2)); Assert.assertTrue(em.contains(pp3)); // Check for detach em.detach(pp1); em.detach(pp2); Assert.assertFalse(em.contains(pp1)); Assert.assertFalse(em.contains(pp2)); Assert.assertTrue(em.contains(pp3)); // Modify value in database directly, refresh and then check PC em.clear(); em = emf.createEntityManager(); Object o1 = em.find(Person.class, "1"); em.refresh(o1); Object oo1 = em.find(Person.class, "1"); Assert.assertTrue(em.contains(o1)); }
Assert.assertEquals("Singapore", found2.getCity()); em.detach(foundAfterMerge); em.clear(); found = em.find(SampleEntity.class, 1);