-1
我想與ID什麼,它總是返回0
檢索與Hibernate的數據,這是我的助手類:
public class ftHelper {
Session session = null;
public ftHelper(){
this.session = HibernateUtil.getSessionFactory().getCurrentSession();
}
public List getFtResult(String beginDate) {
List<FinancialTransactions> ftList = null;
try {
org.hibernate.Transaction tx = session.beginTransaction();
Query q = session.createQuery ("from FinancialTransactions where Date='"+beginDate+"'");
ftList = (List<FinancialTransactions>) q.list();
} catch (Exception e) {
e.printStackTrace();
}
return ftList;
}
public FinancialTransactions getByID(){
System.out.print("HERE");
FinancialTransactions ft = null;
try {
org.hibernate.Transaction tx = session.beginTransaction();
Query q = session.createQuery("from FinancialTransactions where ID=" + 1);
ft = new FinancialTransactions(1);
} catch (Exception e) {
e.printStackTrace();
}
return ft;
}
我在這裏使用getById函數來檢索數據
我有一個控制器class
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
/**
*
* @author mert
*/
@ManagedBean
@RequestScoped
public class ftController {
String beginDate;
DataModel fts;
ftHelper ft;
int num;
public int getNum() {
return num;
}
/**
* Creates a new instance of ftController
*/
public ftController() {
}
public DataModel getFts() {
if (fts == null) {
fts = new ListDataModel(ft.getFtResult(beginDate));
}
return fts;
}
public int getID(){
FinancialTransactions ftObject = ft.getByID();
return num = ftObject.getAmount();
}
}
在這個控制器中我使用getID函數來獲取對象
在JSF我不喜歡的是:
但它始終打印0,爲什麼?
我覺得有什麼問題在我的課,因爲
我在我的控制器一樣,編輯的getID()函數:
public int getID(){
FinancialTransactions fta = new FinancialTransactions(5, "asdasdsa", 123);
return num = fta.getAmount();
}
NUM也返回0爲什麼爲什麼爲什麼?這裏有什麼問題?
什麼是你'FinancialTransactions'類是什麼樣子? –
如果'id'是你的'FinancialTransactions'實體類的主鍵,只要執行'session.get(FinancialTransactions.class,id)'。不需要查詢,也不需要明確的事務。你似乎讓事情變得比必要的複雜得多。 – Jesper