簡單的說,我用hibernate語言進行查詢,初始化了一個session,函數需要return一個Iterator類型,但是我要關閉此session,我應該把這個close session語句放在哪里?
詳細點說,我的與數據庫連接進行查詢的函數如下:
public class OperatorBean extends AbsQueryMap
{
public OperatorBean()throws HibernateException
{
this.initSession();
}
//查詢所有操作員的基本信息
public Iterator getAllOperatorBase()throws HibernateException
{
String queryString = "select operatorInfos from OperatorInfo as operatorInfos";
initSession();
Query query = this.session.createQuery(queryString);
Iterator it= query.iterate();
return it;
}
}
其中,AbsQueryBase的作用是初始化session,具體代碼如下:
public class AbsQueryMap {
/**
* 打開當前的數據庫連接
* @return
* @throws HibernateException
*/
public void initSession() throws HibernateException {
this.session = DBUtil.currentSession();
}
/**
* 關閉當前的數據庫連接
* @throws HibernateException
*/
public void closeSession() throws HibernateException {
DBUtil.closeSession();
}
}
我在Action中調用OperatorBean,如下
OperatorBean business=new OperatorBean();
Iterator it=business.getAllOperatorBase();
難道我要在Action中關閉session嗎?
急救啊,小米!
posted on 2005-08-29 11:16
小米 閱讀(377)
評論(0) 收藏