org.hibernate.Query.getReturnTypes()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.7k)|赞(0)|评价(0)|浏览(225)

本文整理了Java中org.hibernate.Query.getReturnTypes方法的一些代码示例,展示了Query.getReturnTypes的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.getReturnTypes方法的具体详情如下:
包路径:org.hibernate.Query
类名称:Query
方法名:getReturnTypes

Query.getReturnTypes介绍

[英]Return the Hibernate types of the query results.
[中]返回查询结果的休眠类型。

代码示例

代码示例来源:origin: hibernate/hibernate-orm

  1. public TupleBuilderTransformer(org.hibernate.Query hqlQuery) {
  2. final Type[] resultTypes = hqlQuery.getReturnTypes();
  3. final int tupleSize = resultTypes.length;
  4. this.tupleElements = CollectionHelper.arrayList( tupleSize );
  5. final String[] aliases = hqlQuery.getReturnAliases();
  6. final boolean hasAliases = aliases != null && aliases.length > 0;
  7. this.tupleElementsByAlias = hasAliases
  8. ? CollectionHelper.<String, HqlTupleElementImpl>mapOfSize( tupleSize )
  9. : Collections.<String, HqlTupleElementImpl>emptyMap();
  10. for ( int i = 0; i < tupleSize; i++ ) {
  11. final HqlTupleElementImpl tupleElement = new HqlTupleElementImpl(
  12. i,
  13. aliases == null ? null : aliases[i],
  14. resultTypes[i]
  15. );
  16. tupleElements.add( tupleElement );
  17. if ( hasAliases ) {
  18. final String alias = aliases[i];
  19. if ( alias != null ) {
  20. tupleElementsByAlias.put( alias, tupleElement );
  21. }
  22. }
  23. }
  24. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testJpaTypeOperator() {
  3. // just checking syntax here...
  4. Session s = openSession();
  5. s.beginTransaction();
  6. ///////////////////////////////////////////////////////////////
  7. // where clause
  8. // control
  9. s.createQuery( "from Animal a where a.class = Dog" ).list();
  10. // test
  11. s.createQuery( "from Animal a where type(a) = Dog" ).list();
  12. ///////////////////////////////////////////////////////////////
  13. // select clause (at some point we should unify these)
  14. // control
  15. Query query = s.createQuery( "select a.class from Animal a where a.class = Dog" );
  16. query.list(); // checks syntax
  17. assertEquals( 1, query.getReturnTypes().length );
  18. assertEquals( Integer.class, query.getReturnTypes()[0].getReturnedClass() ); // always integer for joined
  19. // test
  20. query = s.createQuery( "select type(a) from Animal a where type(a) = Dog" );
  21. query.list(); // checks syntax
  22. assertEquals( 1, query.getReturnTypes().length );
  23. assertEquals( DiscriminatorType.class, query.getReturnTypes()[0].getClass() );
  24. assertEquals( Class.class, query.getReturnTypes()[0].getReturnedClass() );
  25. s.getTransaction().commit();
  26. s.close();
  27. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. @TestForIssue( jiraKey = "HHH-1464" )
  3. public void testQueryMetadataRetrievalWithFetching() {
  4. // HHH-1464 : there was a problem due to the fact they we polled
  5. // the shallow version of the query plan to get the metadata.
  6. Session s = openSession();
  7. Query query = s.createQuery( "from Animal a inner join fetch a.mother" );
  8. assertEquals( 1, query.getReturnTypes().length );
  9. assertNull( query.getReturnAliases() );
  10. s.close();
  11. }

代码示例来源:origin: hibernate/hibernate-orm

  1. s.clear();
  2. Query q = s.createQuery("select distinct a.zoo from Animal a where a.zoo is not null");
  3. Type type = q.getReturnTypes()[0];
  4. assertTrue( type instanceof ManyToOneType );
  5. assertEquals( ( (ManyToOneType) type ).getAssociatedEntityName(), "org.hibernate.test.hql.Zoo" );

代码示例来源:origin: hibernate/hibernate-orm

  1. s.clear();
  2. Query q = s.createQuery("select distinct a.zoo from Animal a where a.zoo is not null");
  3. Type type = q.getReturnTypes()[0];
  4. assertTrue( type instanceof ManyToOneType );
  5. assertEquals( ( (ManyToOneType) type ).getAssociatedEntityName(), "org.hibernate.test.hql.Zoo" );

代码示例来源:origin: hibernate/hibernate-orm

  1. s.clear();
  2. Query q = s.createQuery("select a.zoo from Animal a where a.zoo is not null order by a.zoo.name");
  3. Type type = q.getReturnTypes()[0];
  4. assertTrue( type instanceof ManyToOneType );
  5. assertEquals( ( (ManyToOneType) type ).getAssociatedEntityName(), "org.hibernate.test.hql.Zoo" );

代码示例来源:origin: hibernate/hibernate-orm

  1. s.clear();
  2. Query q = s.createQuery("select distinct a.zoo from Animal a where a.zoo is not null order by a.zoo.name");
  3. Type type = q.getReturnTypes()[0];
  4. assertTrue( type instanceof ManyToOneType );
  5. assertEquals( ( (ManyToOneType) type ).getAssociatedEntityName(), "org.hibernate.test.hql.Zoo" );

代码示例来源:origin: hibernate/hibernate-orm

  1. qu.getReturnTypes();
  2. qu.getNamedParameters();

代码示例来源:origin: hibernate/hibernate-orm

  1. s.save( new Bar() );
  2. Query query = s.createQuery("select f, f.integer from Foo f");
  3. assertTrue( query.getReturnTypes().length==2 );
  4. ScrollableResults iter = query.scroll();
  5. assertTrue( iter.next() );
  6. txn = s.beginTransaction();
  7. query = s.createQuery("select f, f.integer from Foo f");
  8. assertTrue( query.getReturnTypes().length==2 );
  9. iter = query.scroll();
  10. assertTrue( iter.next() );

代码示例来源:origin: jasperreports/jasperreports

  1. /**
  2. * Returns the return types of the HQL query.
  3. *
  4. * @return the return types of the HQL query
  5. */
  6. public Type[] getReturnTypes()
  7. {
  8. return query.getReturnTypes();
  9. }

代码示例来源:origin: com.github.cafdataprocessing/corepolicy-hibernate

  1. @Override
  2. public Type[] getReturnTypes() {
  3. return query.getReturnTypes();
  4. }

代码示例来源:origin: ezbz/projectx

  1. @Override
  2. public Type[] getReturnTypes() throws HibernateException {
  3. return query.getReturnTypes();
  4. }

代码示例来源:origin: riotfamily/riot

  1. public Type[] getReturnTypes() throws HibernateException {
  2. return query.getReturnTypes();
  3. }

代码示例来源:origin: riotfamily/riot

  1. @SuppressWarnings("unchecked")
  2. public QueryResult(Query query) {
  3. super(query.list(), query.getReturnTypes()[0].getReturnedClass());
  4. }

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.ejb

  1. public TupleBuilderTransformer(org.hibernate.Query hqlQuery) {
  2. final Type[] resultTypes = hqlQuery.getReturnTypes();
  3. final int tupleSize = resultTypes.length;
  4. this.tupleElements = CollectionHelper.arrayList( tupleSize );
  5. final String[] aliases = hqlQuery.getReturnAliases();
  6. final boolean hasAliases = aliases != null && aliases.length > 0;
  7. this.tupleElementsByAlias = hasAliases
  8. ? CollectionHelper.<String, HqlTupleElementImpl>mapOfSize( tupleSize )
  9. : Collections.<String, HqlTupleElementImpl>emptyMap();
  10. for ( int i = 0; i < tupleSize; i++ ) {
  11. final HqlTupleElementImpl tupleElement = new HqlTupleElementImpl(
  12. i,
  13. aliases == null ? null : aliases[i],
  14. resultTypes[i]
  15. );
  16. tupleElements.add( tupleElement );
  17. if ( hasAliases ) {
  18. final String alias = aliases[i];
  19. if ( alias != null ) {
  20. tupleElementsByAlias.put( alias, tupleElement );
  21. }
  22. }
  23. }
  24. }

代码示例来源:origin: org.exoplatform.core/exo.core.component.organization.jdbc

  1. E[] entities = (E[])Array.newInstance(query.getReturnTypes()[0].getReturnedClass(), length);
  2. Iterator<E> results = query.iterate();

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.ejb

  1. else if ( hqlQuery.getReturnTypes().length == 1 ) {
  2. if ( !resultClass.isAssignableFrom( hqlQuery.getReturnTypes()[0].getReturnedClass() ) ) {
  3. throw new IllegalArgumentException(
  4. "Type specified for TypedQuery [" +
  5. resultClass.getName() +
  6. "] is incompatible with query return type [" +
  7. hqlQuery.getReturnTypes()[0].getReturnedClass() + "]"
  8. );

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.ejb

  1. if ( namedQuery.getReturnTypes().length != 1 ) {
  2. throw new IllegalArgumentException( "Cannot create TypedQuery for query with more than one return" );
  3. if ( !resultClass.isAssignableFrom( namedQuery.getReturnTypes()[0].getReturnedClass() ) ) {
  4. throw buildIncompatibleException( resultClass, namedQuery.getReturnTypes()[0].getReturnedClass() );

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.ejb

  1. public <T> TypedQuery<T> createQuery(
  2. String jpaqlString,
  3. Class<T> resultClass,
  4. Selection selection,
  5. Options options) {
  6. try {
  7. org.hibernate.Query hqlQuery = getSession().createQuery( jpaqlString );
  8. if ( options.getValueHandlers() == null ) {
  9. options.getResultMetadataValidator().validate( hqlQuery.getReturnTypes() );
  10. }
  11. // determine if we need a result transformer
  12. List tupleElements = Tuple.class.equals( resultClass )
  13. ? ( ( CompoundSelectionImpl<Tuple> ) selection ).getCompoundSelectionItems()
  14. : null;
  15. if ( options.getValueHandlers() != null || tupleElements != null ) {
  16. hqlQuery.setResultTransformer(
  17. new CriteriaQueryTransformer( options.getValueHandlers(), tupleElements )
  18. );
  19. }
  20. return new QueryImpl<T>( hqlQuery, this, options.getNamedParameterExplicitTypes() );
  21. }
  22. catch ( HibernateException he ) {
  23. throw convert( he );
  24. }
  25. }

相关文章