JSF'de, h:dataTable
ve h:panelGrid
her ikisi de html oluşturmak table
-tags.JSF: h: dataTable ve h: panelGrid
Her ikisi arasındaki fark nedir?
Birini veya diğerini ne zaman kullanmalısınız?
JSF'de, h:dataTable
ve h:panelGrid
her ikisi de html oluşturmak table
-tags.JSF: h: dataTable ve h: panelGrid
Her ikisi arasındaki fark nedir?
Birini veya diğerini ne zaman kullanmalısınız?
Adından da anlaşılacağı gibi, uygulamanızdaki bazı modellerden veri içeren bir tablo görüntülemek için h:dataTable
çoğunlukla kullanılır.
<h:dataTable value="#{dataTableBean.items}" var="item">
<h:column>
<f:facet name="header" >
<h:outputText value="Item Category"/>
</f:facet>
<h:outputText value="#{item.category}"/>
</h:column>
</h:dataTable>
h:panelGrid
Here is an usage example. düzeni ve elemanlar amacıyla yerleştirme için en çok kullanılır. Here is an usage example.
<h:panelGrid id="panel" columns="2" border="1">
<h:outputText value="First Name:" />
<h:inputText id="first" value="#{backingBean.user.firstName}" />
<h:outputText value="Last Name:" />
<h:inputText id="last" value="#{backingBean.user.lastName}" />
</h:panelGrid>
Eğer görüntülemek istediğiniz satır ve sütun sayısını bilmek ne zaman, el (tüm alt bileşenlerini kendini tanımlamak zorunda Sen, panelGrid tarafından herhangi satır/collumns eklemek olmayacak bir panelGrid kullanmalıdır kendisi) ve panelGrid onları düzenleyecektir. Diğer taraftan DataGrid, belirli bir boyuta sahip bir veri yapısına (koleksiyon gibi) sahip olduğunuzda kullanılır, daha sonra yazdırmak istediğiniz sütunları belirtmeniz gerekir ve dataGrid her koleksiyon için bir satır oluşturarak bu koleksiyon üzerinde yinelenir .
dataTable, model-drivendata çıkış bileşenidir. Modelinizdeki her satır için, bileşen, JSF lifecycle'un her aşaması için çocuklarının durumunu ayarlayabilir. Bu davranış, elde etmeye çalıştığınız şeye bağlı olarak yararlı veya zararlıdır.
Buna karşılık, panelGrid yalnızca layout control'dur.
Fark, (çok) kabaca JTable ve JPanel arasındaki farka benzer.
Somunlarda: dinamik tablo için 'h: dataTable' ve statik tablo için' h: panelGrid' kullanın. – BalusC