Class AliasToBeanResultTransformer

  • All Implemented Interfaces:
    Serializable, ResultListTransformer, TupleTransformer, ResultTransformer, TupleSubsetResultTransformer

    public class AliasToBeanResultTransformer
    extends AliasedTupleSubsetResultTransformer
    Result transformer that allows to transform a result to a user specified class which will be populated via setter methods or fields matching the alias names.

     List resultWithAliasedBean = s.createCriteria(Enrolment.class)
                            .createAlias("student", "st")
                            .createAlias("course", "co")
                            .setProjection( Projections.projectionList()
                                            .add( Projections.property("co.description"), "courseDescription" )
                            )
                            .setResultTransformer( new AliasToBeanResultTransformer(StudentDTO.class) )
                            .list();
     

    StudentDTO dto = (StudentDTO)resultWithAliasedBean.get(0);

    See Also:
    Serialized Form
    • Constructor Detail

      • AliasToBeanResultTransformer

        public AliasToBeanResultTransformer​(Class resultClass)
    • Method Detail

      • isTransformedValueATupleElement

        public boolean isTransformedValueATupleElement​(String[] aliases,
                                                       int tupleLength)
        Description copied from interface: TupleSubsetResultTransformer
        When a tuple is transformed, is the result a single element of the tuple?
        Parameters:
        aliases - - the aliases that correspond to the tuple
        tupleLength - - the number of elements in the tuple
        Returns:
        true, if the transformed value is a single element of the tuple; false, otherwise.
      • transformTuple

        public Object transformTuple​(Object[] tuple,
                                     String[] aliases)
        Description copied from interface: TupleTransformer
        Tuples are the elements making up each "row" of the query result. The contract here is to transform these elements into the final row shape.
        Specified by:
        transformTuple in interface TupleTransformer
        Overrides:
        transformTuple in class BasicTransformerAdapter
        Parameters:
        tuple - The result elements
        aliases - The result aliases ("parallel" array to tuple)
        Returns:
        The transformed row.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object