23 Eylül 2010 Perşembe

Hibernate Transform Alias To Bean

Hibernate'de bir tabloya yapılan sorgu sonucunu direkt olrak başka bir tabloya dönüştürme: ( Hibernate Transform Alias To Bean )


public List findTxnPerPCodes(String institutionId) {

  try {
     // Criteria oluşturuyoruz

     Criteria c = getSession().createCriteria(Txn.class));

     // Hibernate BUG: this. koymak gerekiyor. bkz:

     // http://www.weask.us/entry/hibernate-query-projections
     c.add(Restrictions.eq("this.institutionId", institutionId));

     // Projection oluşturuyoruz

     ProjectionList projList = Projections.projectionList();

     // Group by özelliklerini veriyoruz

     projList.add(Projections.groupProperty("institutionId"));
     projList.add(Projections.groupProperty("timeDaily"));
     projList.add(Projections.groupProperty("atmDim"));
     projList.add(Projections.groupProperty("currencyDim"));
     projList.add(Projections.groupProperty("pcode"));

     // setResultTransformer'in TxnPerPCode icinde objeleri set

     // edebilmesi icin alias veriyoruz
     projList.add(Projections.property("institutionId"), "institutionId");
     projList.add(Projections.property("timeDaily"), "timeDaily");
     projList.add(Projections.property("atmDim"), "atmDim");
     projList.add(Projections.property("currencyDim"), "currencyDim");
     projList.add(Projections.property("pcode"), "pcode");
     projList.add(Projections.count("id"), "txnCount");
     projList.add(Projections.sum("amount"), "txnAmount");

     // Criteria için projection set ediyoruz

     c.setProjection(projList);

     // Criteria sonucunu TxnPerPCode entity'lerine transform ediyoruz
     c.setResultTransformer(Transformers.aliasToBean(TxnPerPCode.class));

     return c.list();

  } catch (HibernateException e) {
     throw new DBInfrastructureException(e);
  }


}

20 Eylül 2010 Pazartesi

And So You Code?


UniPaaS isimli yazılımın viral reklamını yapan oldukça eğlencili bir video.