我对 JSF 有疑问。
我用 JSF 和 primefaces 的 dataTable 创建了一个页面,但我意识到当我在 datatable 中使用 var 时,JSF 会多次重新加载相同的 get 方法。我不知道是否因为JSF或我的程序,有人可以帮助我吗?
<p:dataTable var="Usuario" value="#{usuarioBean.listaUsuario}"
paginator="true" rows="10" selection="#{usuarioBean.usuario}"
rowKey="#{Usuario.id}"
id="dataTable"
paginatorPosition="bottom">
<p:column headerText="ID" style="width: 10px">
<h:outputText value="#{Usuario.id}"/>
</p:column>
<p:column headerText="Nome">
<h:outputText value="#{Usuario.nome}"/>
</p:column>
<p:column headerText="E-mail">
<h:outputText value="#{Usuario.email}"/>
</p:column>
<p:column headerText="Telefone" style="width: 10px">
<h:outputText value="#{Usuario.telefone}"/>
</p:column>
<p:column headerText="Editar" style="width: 10px;">
<p:commandLink id="btnEditar" action="#{usuarioBean.ChamareditarUsuario()}" ajax="false" title="Editar">
<h:graphicImage value="/resources/img/editar.png" style="position: relative; top: 25%; left: 25%;" />
<f:setPropertyActionListener value="#{Usuario}" target="#{usuarioBean.usuario}" />
</p:commandLink>
</p:column>
<p:column headerText="Excluir" style="width: 10px;">
<p:commandLink id="btnDeletar" title="Deletar" action="#{usuarioBean.deletarUsuario()}" update="dataTable">
<h:graphicImage value="/resources/img/deletar.png" style="position: relative; top: 25%; left: 25%;"/>
<f:setPropertyActionListener value="#{Usuario}" target="#{usuarioBean.usuario}" />
</p:commandLink>
</p:column>
<p:column selectionMode="single" width="1%"/>
</p:dataTable>
@ManagedBean
@RequestScoped
public class UsuarioBean {
private Usuario usuario = new Usuario();
private String campo;
private String valor;
private List<Usuario> listaUsuario;
private String acesso;
private List<Acesso> listaAcesso;