Session.load()這個方法還真是怪!

savage429發表於2007-08-03
以前在eclipse3.1下做了個小專案,struts+hibernate,昨天遷到3.2下出了問題,於是用myeclipse又從新做了下,兩種架構都是myeclipse匯入的,然後在dao包裡寫了個邏輯處理的類,其中用到Session session的load方法時,原來在3.1下沒有問題的程式碼報錯,什麼load裡面的引數應該是class和Serializable型,可是為什麼我原來用的long型可以現在就不行了呢?
/**
* 根據id資訊從資料庫中找到對應的資訊
*
* @SavageGarden
* @param id
* @return
* */
public Cd getCD(long id){
//透過Session從資料庫中取得CD資訊
Cd cd;
try {
cd = (Cd)session.load(Cd.class,id);
//提交事務
transaction.commit();
} catch (Exception e) {
// TODO 自動生成 catch 塊
cd=null;
e.printStackTrace();
}
return cd;
}
就是這句cd = (Cd)session.load(Cd.class,id);報錯

然後還有就是在action裡的request.setAttribute(),我拿個boolean型的變數做引數它又報錯應該為object型
boolean result=dbManager.addCD(cd);
//為request物件設定“addresult”屬性
request.setAttribute("addresult",result);
就是這句request.setAttribute("addresult",result);報錯
是不是我的配置檔案什麼地方寫錯了呢?大家給看下,我的bean和bean.hbm.xml裡面的id就是long型的 怎麼回事啊,明明在3.1下沒有錯誤的,怎麼在3.2下就不行了呢

相關文章