0

我有一個頁面,其中有條件呈現的內容由sidemenu中的多個鏈接控制。所有這些內容都有一個默認情況下呈現爲false的數據表。一切正常,除了當頁面加載所有的bean被執行時,所有的bean都在做昂貴的數據庫工作。如何在與有條件呈現內容相關聯的頁面加載時不初始化bean

我希望當用戶點擊側邊菜單時,相應的數據表將會呈現,只有相關的託管bean纔會被初始化。我怎樣才能做到這一點?

回答

0

我最近遇到了這樣的問題。我決定使用我用來決定渲染的相同條件,或者不使這個或那個組件決定初始化或不初始化它的支持變量。例如,你有JSF頁面代碼:

<h:outputText rendered="#{bean.isRendered()}" value="#{bean.text}"/> 

和bean是以下幾點:

@PostConstruct 
public void init(){ 
    if(isRendered){ 
      text = "Hello World"; 
    } 
} 
相關問題