hibernateTemplate常用方法

2021-09-29 08:29:17 字數 4555 閱讀 1227

一、find(string querystring);

示例:this.gethibernatetemplate().find("from bean.user");

返回所有user物件

二、find(string querystring , object value);

示例:this.gethibernatetemplate().find("from bean.user u where u.name=?", "test");

或模糊查詢:this.gethibernatetemplate().find("from bean.user u where u.name like ?", "%test%");

返回name屬性值為test的物件(模糊查詢,返回name屬性值包含test的物件)

三、find(string querystring, object values);

示例:string hql= "from bean.user u where u.name=? and u.password=?"

this.gethibernatetemplate().find(hql, new string);

返回使用者名為test並且密碼為123的所有user物件

四、findbyexample(object exampleentity)

示例:user u=new user();    

u.setpassword("123");//必須 符合的條件但是這兩個條件時並列的(象當於sql中的and)    

u.setname("bb");    

list=this.gethibernatetemplate().findbyexample(u,start,max);  

返回:使用者名為bb密碼為123的物件

五、findbyexample(object exampleentity, int firstresult, int maxresults)

示例:user u=new user();    

u.setpassword("123");//必須 符合的條件但是這兩個條件時並列的(象當於sql中的and)    

u.setname("bb");    

list=this.gethibernatetemplate().findbyexample(u,start,max);    

返回:滿足使用者名為bb密碼為123,自start起共max個user物件。(物件從0開始計數)

六、findbynamedparam(string querystring , string paramname , object value)

使用以下語句查詢: 

string querystring = "select count(*) from bean.user u where u.name=:myname"; 

string paramname= "myname";

string value= "xiyue";

this.gethibernatetemplate().findbynamedparam(querystring, paramname, value); 

system.out.println(list.get(0)); 

返回name為xiyue的user物件的條數

七、findbynamedparam(string querystring , string paramname , object value)

示例:string querystring = "select count(*) from bean.user u where u.name=:myname and u.password=:mypassword"; 

string paramname= new string;

string value= new string;

this.gethibernatetemplate().findbynamedparam(querystring, paramname, value);

返回使用者名為xiyue密碼為123的user物件

八、findbynamedquery(string queryname)

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user

2、如下使用查詢:

this.gethibernatetemplate().findbynamedquery("queryalluser");

九、findbynamedquery(string queryname, object value)

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user u where u.name = ?

2、如下使用查詢:

this.gethibernatetemplate().findbynamedquery("querybyname", "test");

十、findbynamedquery(string queryname, object value)

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user u where u.name =? and u.password =?

2、如下使用查詢:

string values= new string;

this.gethibernatetemplate().findbynamedquery("querybynameandpassword" , values);

十一、findbynamedqueryandnamedparam(string queryname, string paramname, object value) 

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user u where u.name =:myname

2、如下使用查詢:

this.gethibernatetemplate().findbynamedquery("querybyname" , "myname", "test");

十二、findbynamedqueryandnamedparam(string queryname, string paramname, object value) 

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user u where u.name =:myname and u.password=:mypassword

2、如下使用查詢:

string names= new string;

string values= new string;

this.gethibernatetemplate().findbynamedquery("querybynameandpassword" , names, values);

十三、findbyvaluebean(string querystring , object value);

示例:1、定義乙個valuebean,屬性名必須和hsql語句中的:後面的變數名同名,此處必須至少有兩個屬性,分別為myname和mypassword,使用setter方法設定屬性值後

valuebean valuebean= new valuebean();

valuebean.setmyname("test");

valuebean.setmypasswrod("123");

2、string querystring= "from bean.user u where u.name=:myname and u.password=:mypassword";

this.gethibernatetemplate().findbyvaluebean(querystring , valuebean);

十四、findbynamedqueryandvaluebean(string queryname , object value);

示例:1、首先需要在user.hbm.xml中定義命名查詢

......

from bean.user u where u.name =:myname and u.password=:mypassword

2、定義乙個valuebean,屬性名必須和user.hbm.xml命名查詢語句中的:tb

後面的變數名同名,此處必須至少有兩個屬性,分別為myname和mypassword,使用setter方法設定屬性值後

valuebean valuebean= new valuebean();

valuebean.setmyname("test");

valuebean.setmypasswrod("123");

3、string querystring= "from bean.user u where u.name=:myname and u.password=:mypassword";

this.gethibernatetemplate().findbynamedqueryandvaluebean("querybynameandpassword", valuebean);

HibernateTemplate相關方法

向資料庫新增一條對應於乙個業務物件例項的記錄 param entity 業務物件例項 public entity create entity entity throws daoexception catch dataacces ception e 向資料庫更新一條對應於乙個業務物件例項的記錄 par...

HibernateTemplate相關方法

向資料庫新增一條對應於乙個業務物件例項的記錄 param entity 業務物件例項 publicentity create entity entity throwsdaoexceptioncatch dataacces ception e 向資料庫更新一條對應於乙個業務物件例項的記錄 param ...

HibernateTemplate中執行sql語句

hibernatetemplate中執行sql語句 杯具,居然有個很明顯的錯誤 getsession 應改為 session 使用匿名內部類的入參session,否則spring不進行session的生命週期管理。建立可更新 update 和刪除 delete 的sql suppresswarnin...