2013-10-18 29 views
0

目前我有一個Primefaces selectOneMenu來直接顯示數據庫中的值。但是,由於它在數據庫中重複多次,因此這些值將被重複多次。一次針對數據庫中的每個實例。有沒有辦法檢索這些值,只顯示其中的一個?p:selectOneMenu中的重複值

我已經提供了下面selectOneMenu的代碼,如果需要更多的代碼,我會添加它。

  <p:selectOneMenu value="#{addOrderBean.state}" id="state"> 
       <f:selectItem itemLabel="Select One" itemValue=" "/> 
       <f:selectItems value="#{ordersBean.orders}" var="order" itemLabel="#{order.state}" itemValue="#{order.state}"/> 
      </p:selectOneMenu> 

這裏是爲了顯示我的意思的情況下,我沒有解釋得很順利圖像:

enter image description here

+0

我不明白,你已經重複數據庫中的數據,但你wonna只顯示上'selectOneMenu'不同datat? – Cold

+0

是的,我希望能夠做到這一點,而不必創建一個單獨的數據庫表 – DaRoGa

回答

0

創建SQL查詢,爲你的狀態表不同的狀態,並調用結果在ordersBean.orders方法。

喜歡的東西:

SELECT DISTINCT 'STATE TABLE'.state FROM 'STATE TABLE'; 
+0

好吧,所以唯一的方法是通過SQL? – DaRoGa

+0

嗯,我認爲是最好的方法,因爲JSF只適用於View層。但是您可以創建som方法,從「List」中刪除重複的值。我更喜歡讓DBMS做到這一點 – Cold

+0

好聽起來像最好的計劃。謝謝@ColdHack – DaRoGa