Hibernate Projektionen Liste

Ich ned, um nur ein paar der Spalte Werte aus der Tabelle. So habe ich verwendet Projektionen, dies zu erreichen. Der code funktioniert, aber ich glaube nicht, dass es wirksam ist.

Mein Problem war wenn ich ProjectionsList & legen Sie dann die Kriterien.Liste eine ArrayList - die Bulletin-Objekt null ist. Ich bin mir nicht sicher, wie dies zu erklären besser. Also werde ich den code, und dann Lesen Sie bitte unten:

 List<Bulletin> list = new ArrayList<Bulletin>();
 BulletinList bulletinList = null;

 Criteria criteria = null;

 criteria = this.getSession().createCriteria(Bulletin.class)
            .setProjection(Projections.projectionList()
            .add(Projections.property(bulletinIdAttr))
            .add(Projections.property(docNameAttr))   
            .add(Projections.property(docTypeCodeAttr))
            );        
    criteria.addOrder(Order.desc(createdTimeAttr));

    List<Object> rows = criteria.list();
    for (Object r : rows) {
        Object[] row = (Object[]) r;
        Bulletin bull = new Bulletin();
        bull.setBulletinId((Long) row[0]);
        bull.setDocumentName((String) row[1]);
        bull.setDocumentTypeCode((String) row[2]);
        list.add(bull);
      }

    bulletinList = new BulletinList();
    bulletinList.setBulletins(list);

    return bulletinList;

Brauche ich nur den festgelegten Kriterien.Liste BulletinList (Klasse enthält eine Liste mit Bulletin-Objekte). Aber wenn ich Projektionen, Bulletin-Objekt null ist.

Ich war auch zu Lesen, einen weiteren thread zu verwenden

setResultTransformer(Transformers.aliasToBean

Aber, dass ain ' T arbeiten entweder. So kann jemand dabei helfen wie man den code besser.

Dank

Harish

InformationsquelleAutor Harry | 2012-06-15

Schreibe einen Kommentar