/** * Consider using any of the natural id based loading stuff from session instead, especially in cases * where the restriction is the full set of natural id values. * * @return The Criterion * * @see NaturalIdentifier * * @see org.hibernate.Session#byNaturalId(Class) * @see org.hibernate.Session#byNaturalId(String) * @see org.hibernate.Session#bySimpleNaturalId(Class) * @see org.hibernate.Session#bySimpleNaturalId(String) */ public static NaturalIdentifier naturalId() { return new NaturalIdentifier(); }
final NaturalIdentifier naturalIdentifier = (NaturalIdentifier) criterionEntry.getCriterion(); final Map<String, Object> naturalIdValues = naturalIdentifier.getNaturalIdValues(); final int[] naturalIdentifierProperties = entityPersister.getNaturalIdentifierProperties();
private Criteria getCriteria(Session s) { Criteria crit = s.createCriteria( A.class, "anAlias" ); crit.add( Restrictions.naturalId().set( "name", "name1" ) ); crit.setFlushMode( FlushMode.COMMIT ); crit.setCacheable( true ); return crit; }
@TestForIssue(jiraKey = "HHH-9333") @Test public void testNaturalIdCriteria() { Session s = openSession(); s.beginTransaction(); A u = new A(new AId(1), "testCode" ); s.persist( u ); s.getTransaction().commit(); s.close(); s = openSession(); s.beginTransaction(); u = ( A ) s.createCriteria( A.class ) .add( Restrictions.naturalId().set( "shortCode", "testCode" ) ) .uniqueResult(); assertNotNull( u ); s.getTransaction().commit(); s.close(); s = openSession(); s.beginTransaction(); s.createQuery( "delete A" ).executeUpdate(); s.getTransaction().commit(); s.close(); }
/** * Consider using any of the natural id based loading stuff from session instead, especially in cases * where the restriction is the full set of natural id values. * * @see Session#byNaturalId(Class) * @see Session#byNaturalId(String) * @see Session#bySimpleNaturalId(Class) * @see Session#bySimpleNaturalId(String) */ public static NaturalIdentifier naturalId() { return new NaturalIdentifier(); }
final NaturalIdentifier naturalIdentifier = (NaturalIdentifier) criterionEntry.getCriterion(); final Map<String, Object> naturalIdValues = naturalIdentifier.getNaturalIdValues(); final int[] naturalIdentifierProperties = entityPersister.getNaturalIdentifierProperties();
@Test public void testNaturalIdCriteria() { Session s = openSession(); s.beginTransaction(); Account u = new Account(new AccountId(1), "testAcct" ); s.persist( u ); s.getTransaction().commit(); s.close(); s = openSession(); s.beginTransaction(); u = ( Account ) s.createCriteria( Account.class ) .add( Restrictions.naturalId().set( "shortCode", "testAcct" ) ) .setCacheable( true ) .uniqueResult(); assertNotNull( u ); s.getTransaction().commit(); s.close(); s = openSession(); s.beginTransaction(); s.createQuery( "delete Account" ).executeUpdate(); s.getTransaction().commit(); s.close(); }
/** * Consider using any of the natural id based loading stuff from session instead, especially in cases * where the restriction is the full set of natural id values. * * @see Session#byNaturalId(Class) * @see Session#byNaturalId(String) * @see Session#bySimpleNaturalId(Class) * @see Session#bySimpleNaturalId(String) */ public static NaturalIdentifier naturalId() { return new NaturalIdentifier(); }
final NaturalIdentifier naturalIdentifier = (NaturalIdentifier) criterionEntry.getCriterion(); final Map<String, Object> naturalIdValues = naturalIdentifier.getNaturalIdValues(); final int[] naturalIdentifierProperties = entityPersister.getNaturalIdentifierProperties();
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
public static NaturalIdentifier naturalId() { return new NaturalIdentifier(); }
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
public static NaturalIdentifier naturalId() { return new NaturalIdentifier(); }
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); assertEquals( 0, sessionFactory().getStatistics().getNaturalIdCacheHitCount() );//0: no stats since hbm.xml can't enable NaturalId caching u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); s.beginTransaction(); u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult(); assertEquals( 0, sessionFactory().getStatistics().getNaturalIdCacheHitCount() ); //1: no stats since hbm.xml can't enable NaturalId caching u = ( User ) s.createCriteria( User.class ) .add( Restrictions.naturalId().set( "userName", "steve" ) ) .setCacheable( true ) .uniqueResult();
tx = s.beginTransaction(); Criteria criteria = s.createCriteria( NaturalIdOnManyToOne.class ); criteria.add( Restrictions.naturalId().set( "citizen", c1 ) ); criteria.setCacheable( true );