簡體   English   中英

在 ManagedBean 中使用 spring 注入顯示來自數據庫的數據表值

[英]Display datatables values from databse using spring injection in a ManagedBean

JSF + Spring 出現了這個設計問題:-

我在要加載的頁面上有一個數據表,顯示用戶詳細信息,該數據表將從數據庫中獲取。

所以我的 jsf 頁面有:

 <p:dataTable id="userTable" var="user" value="#{userBean.users}" rowKey="#{user.userID}"
                                     selection="#{userBean.selectedUser}" paginator="true" rows="10" >

托管 bean 具有:

private List<UserDetails> users; // getters and setters

現在,我的托管 bean 需要幫助程序 class 的 spring 注入才能從數據庫中獲取用戶。

@ManagedProperty(value="#{userBO}")
private UserBO userBO;

問題是,spring 注入發生在 object 完全實例化時。 所以我不能將我的userBO.getUsersFromDataBase()放在構造函數中並將其分配給我的users

我只是不知道如何在我的 managedBean 中使用 spring 注入從數據庫中獲取用戶。 Spring 需要完成 ManagedBean 的實例化,以便它可以注入 helper class,但是 jsf 頁面在 ManagedBean 完全實例化之前就請求數據庫值。 有點卡住了:/

我不熟悉 spring,但是在標准 JSF 中,您可以在構造后和依賴注入后調用的方法上使用@PostConstruct注釋,例如:

@PostConstruct
public void init() {
    userBO.getUsersFromDataBase()
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM