2013-04-12 36 views
2

在Querydsl 4 Hibernate中有HibernateDeleteClause,HibernateUpdateClause。 插入新記錄怎麼辦?我試過使用HibernateUpdateClause,但它總是生成 HQL更新==> SLQ更新。Hibernate QueryDsl插入語句

如何插入新記錄?這裏有我的querydsl查詢(刪除+插入):

QUniDati uniDati = QUniDati.uniDati; 
HibernateDeleteClause queryUniDatiDelete = uniDatiDao.delete(uniDati) 
.where(uniDati.id.idDomanda.eq(idDomanda)); 
queryUniDatiDelete.execute(); 

QUniDati uniDati = new QUniDati(String.format("uniDati_%d",posizione)); 
HibernateUpdateClause queryUniDatiUpdate = uniDatiDao 
.update(uniDati) 
.set(uniDati.id.idDomanda, idDomanda) 
.set(uniDati.id.pos, posizione++) 
.set(uniDati.parametro, propName.toUpperCase()) 
.set(uniDati.valore, propVal.toString()) 
.where(uniDati.id.idDomanda.eq(idDomanda)); 
queryUniDatiUpdate.execute(); 

回答

0

Querydsl只支持DML條款JPQL支持:UPDATE和DELETE。

對於插入,請直接使用Hibernate API。