關於hibernate的hql

1 關於Query的查詢,當查詢的條件在javabean中的字段值是object的時候,舉例:

public boolean find(Song song, Songsform songsform) {

Session session=null;
session=this.getSessionFactory().getCurrentSession();
Songsformxq songsformxq=new Songsformxq();
/*songsformxq.setSong(song);
songsformxq.setSongsform(songsform);*/
String sql="from Songsformxq sfxq where sfxq.song.id=? and sfxq.songsform.id=?";
Query q=session.createQuery(sql);
q.setInteger(0, song.getId());
q.setInteger(1, songsform.getId());
int a=q.list().size();
if(a>0)
{
return false;
}
return true;

}

2 關於Query插入,利用sql語句實現而並非hql, 舉例:

public boolean add(User user,int songId,String shareDate) throws Exception{
boolean b=false;
Session session = this.getSessionFactory().getCurrentSession();
String sql="insert into share (userId,shareDate,songId) values ("+user.getId()+",'"+shareDate+"',"+songId+")";
int a=session.createSQLQuery(sql).executeUpdate();
if(a>0){
b=true;
}
return b;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章