2012-02-14 37 views
1

是否可以使用具有多個數據源的相同數據表?如果是,那麼如何?有人能給我一個例子嗎? 更確切地說,我們可以綁定/解除綁定不同的數據源到數據表編程嗎?如何爲不同的bean重用相同的數據表?

+1

您可以讓您的託管bean從您喜歡的來源獲取數據。 – perissf 2012-02-14 08:25:47

回答

1

一些示例代碼中給出。 ..

<p:selectOneRadio id="myRadio" value="#{beanProductDetails.selectedtype}"> 
    <f:selectItems value="#{bean.types}"/> 
    <f:ajax event="valueChange" update="panel_CATALOG" listener="#{bean.typeChanged}" /> 
</p:selectOneRadio> 


<h:panelGrid id="panel_CATALOG"> 
    <p:dataTable id="table_Details" value="#{bean.list_Details}"> 
     ........ 
    </p:dataTable> 
</h:panelGrid> 

提供selectOneRadio來決定使用哪個數據源。在這裏,在bean的typeChanged方法中,根據所選類型決定應該是list_Details。

+0

感謝您的快速響應。但是,你能告訴我如何在typeChanged列表器中更改數據表的數據源嗎? – 2012-02-15 06:23:41

+1

這取決於您如何組織數據。 1.您可以將所有數據源的記錄保存爲單個列表,並根據所選類型根據列表中的開始和結束索引決定要在數據表中顯示的特定子列表。 2.您可以將數據從特定的來源複製到list_Details基於選定的類型等。希望這可以幫助 – rags 2012-02-15 06:32:17

+0

非常感謝! :-) – 2012-02-15 06:41:58

2

是的,這是可能的。通常,您將數據表的value屬性設置爲List<MyClass>,其中MyClass可以是pojo或實體。該列表是您的支持bean的實例變量,當然,該變量可以在運行時更改。

+0

謝謝:-)你能解釋一下嗎?其實我想知道我們怎樣才能以編程方式做到這一點? – 2012-02-15 06:10:46

相關問題