Duvida como fazer um atualizar cadastro?

Boa noite pessoal,

Estou com duvidas de como fazer um atualizar cadastro, eu já fiz um criar usuário e listar todos cadastrados e agora estou tentando trazer os dados desse usuário já cadastrado em um inputText para já para atualizar e gravar no banco. Porem não sei como identificar o usuário pela chave primaria no banco para puxar os dados dele.

Alguém poderia me ajudar?
Estou usando JSF e Hibernate.

Obrigado.

Camarada, qualquer pesquisa tosca na documentação do hibernate ou mesmo no google te dirá como fazer essa busca.
Deixa de ser preguiçoso e vá pesquisar um pouco. Caso você pesquise e não consiga entender algo, poste aqui tua dúvida, para ser esclarecida, claro, seguindo as regras do fórum e indicando onde fez a pesquisa e o que não ficou claro.

[quote=drsmachado]Camarada, qualquer pesquisa tosca na documentação do hibernate ou mesmo no google te dirá como fazer essa busca.
Deixa de ser preguiçoso e vá pesquisar um pouco. Caso você pesquise e não consiga entender algo, poste aqui tua dúvida, para ser esclarecida, claro, seguindo as regras do fórum e indicando onde fez a pesquisa e o que não ficou claro.[/quote]

A dúvida dele não é como buscar os dados do cadastro no banco, e sim como localizar um registro e trazer para o formulário para que possa ser editado.

[quote=manuel]Boa noite pessoal,

Estou com duvidas de como fazer um atualizar cadastro, eu já fiz um criar usuário e listar todos cadastrados e agora estou tentando trazer os dados desse usuário já cadastrado em um inputText para já para atualizar e gravar no banco. Porem não sei como identificar o usuário pela chave primaria no banco para puxar os dados dele.

Alguém poderia me ajudar?
Estou usando JSF e Hibernate.

Obrigado.[/quote]

Manuel, isso depende de como você está implementando o layout dos seus cruds. Vamos usar um cadastro de cliente como exemplo: você poderia criar uma tela onde listaria os clientes cadastrado em uma tabela paginada e carregada via lazy-loading. Ai nesta mesma tela você teria botões “Adicionar”, “Alterar”, “Excluir”… onde adicionar abriria seu formulário “limpo” para inserir um novo registro, já para alterar você selecionaria o registro na grid e ele abriria o mesmo formulário da inserção, porém com os dados desse registro setados no formulário.

Att

[quote=drsmachado]Camarada, qualquer pesquisa tosca na documentação do hibernate ou mesmo no google te dirá como fazer essa busca.
Deixa de ser preguiçoso e vá pesquisar um pouco. Caso você pesquise e não consiga entender algo, poste aqui tua dúvida, para ser esclarecida, claro, seguindo as regras do fórum e indicando onde fez a pesquisa e o que não ficou claro.[/quote]

Esses caras que gostam de se amostrar, se não tem solução não posta então.

Voltando ao tópico, você usa algum componente ? primefaces ? poderia postar sua pagina e seu manager bean pra te auxiliar melhor…

[b]felipedamiani

Valeio Bezerra[/b]

Obrigado por tentarem me ajudar, diferente de algumas pessoas que não entendem as perguntas e sai esculachando as pessoas sem ao menos conhecer e saber com quem está falando.

Muito obrigado.

Mas vamos ao que interessa abaixo meu bean e minha pagina:

Essa é minha pagina onde estou listando todos os usuários do banco e tenho um botão detalhar que tem que direcionar para a pagina de atualizar usuário onde nessa pagina eu gostaria que mostra-se todos os dados já no campo para ser editado.

Tela que lista todos os usuários

[code]

<h:body>
<ui:composition template="/templateAdm.xhtml">
<ui:define name=“centro”>

	<div class="titulo">
	<h:button styleClass="criarUsuario" outcome="criarUsuario" value="Criar Usuario"/>

	<h4 class="usuarios">Usuarios</h4>
	</div>
	
	<h:dataTable styleClass="tabelaInicial" columnClasses="4" value="#{listarUsuarioBean.usuarios}" var="us" width="680" border="1">
			
			<h:column headerClass="tamanho1" footerClass="tamanho1">
				<f:facet styleClass="protocolo" name="header">Nome</f:facet>
				#{us.nome}
			</h:column>
			
			<h:column headerClass="tamanho3" footerClass="tamanho3">
				<f:facet styleClass="protocolo" name="header">CPF</f:facet>
				#{us.cpf}
			</h:column>
			
			<h:column headerClass="tamanho2" footerClass="tamanho2">
				<f:facet styleClass="data" name="header">Tipo Usuario</f:facet>
				#{us.tipousuario.tipo}
			</h:column>
			
			<h:column headerClass="tamanho3" footerClass="tamanho3">
				<f:facet styleClass="protocolo" name="header">Status</f:facet>
				#{us.statususuario.status}
			</h:column>
			
			<h:column headerClass="tamanho3" footerClass="tamanho3">
				<f:facet styleClass="protocolo" name="header">Detalhar</f:facet>
				<h:button value="Detalhar" outcome="atualizarUsuario.xhtml" />
			</h:column>
			
		</h:dataTable>

	</ui:define>
</ui:composition>

</h:body>

[/code]

Tela de atualizar usuário:

[code]

<h:body>
<ui:composition template="/templateAdm.xhtml">
<ui:define name=“centro”>

	<!-- div class="titulo">
			<h4 class="criarUsuarios">Criar usuarios</h4>
		</div> -->
		
		<h:form id="form">  

<p:panel id="panel" header="Criar usuario">  

    <p:messages id="msgs"/>  

    <h:panelGrid columns="3">  
        <h:outputLabel for="nome" value="Nome: *" />  
        <p:inputText id="nome" value="#{criarUsuarioBean.usuario.nome}" required="true" label="Nome">  
            <f:validateLength minimum="2" />  
        </p:inputText>  
        <p:message for="nome" display="icon"/>  

        <h:outputLabel for="cpf" value="CPF: *" />  
        <p:inputText id="cpf" value="#{criarUsuarioBean.usuario.cpf}" label="Surname" required="CPF">  
            <f:validateLength minimum="2" />  
            <p:ajax update="msgSurname" event="keyup" />  
        </p:inputText>  
        <p:message for="cpf" id="msgSurname" display="icon"/>  
        
               <h:outputLabel for="rg" value="RG: *" />  
        <p:inputText id="rg" value="#{criarUsuarioBean.usuario.rg}" required="true" label="RG">  
            <f:validateLength minimum="2" />  
        </p:inputText>  
        <p:message for="rg" display="icon"/>
        
               <h:outputLabel for="telefone" value="Telefone: *" />  
        <p:inputText id="telefone" value="#{criarUsuarioBean.usuario.telefone}" required="true" label="Telefone">  
            <f:validateLength minimum="2" />  
        </p:inputText>  
        <p:message for="telefone" display="icon"/>
        
               <h:outputLabel for="email" value="E-mail: *" />  
        <p:inputText id="email" value="#{criarUsuarioBean.usuario.email}" required="true" label="E-mail">  
            <f:validateLength minimum="2" />  
        </p:inputText>  
        <p:message for="email" display="icon"/>
        
                     <h:outputLabel for="senha" value="Senha: *" />  
        <p:inputText id="senha" value="#{criarUsuarioBean.usuario.senha}" required="true" label="Senha">  
            <f:validateLength minimum="2" />  
        </p:inputText>  
        <p:message for="senha" display="icon"/>
        
        <div class="prioridade">
			<label class="prioridade">Tipo de usuario: </label>
			<h:selectOneMenu value="#{criarUsuarioBean.tipoUsuario}">
				<f:selectItem itemLabel="Usuario" itemValue="1" />
				<f:selectItem itemLabel="Atendente" itemValue="2" />
				<f:selectItem itemLabel="Administrador" itemValue="3" />
			</h:selectOneMenu>
		</div>
        
    </h:panelGrid>  

    <p:commandButton id="btn" value="Atualizar" update="panel" actionListener="#{criarUsuarioBean.criar}"/>
    <p:commandButton id="btn1" value="Bloquear" update="panel" actionListener="#{criarUsuarioBean.criar}"/>  
</p:panel>  

</h:form>

	</ui:define>
</ui:composition>

</h:body>

[/code]

Abaixo meu Bean que lista todos os usuários

[code]package tccjsf.bean;

import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.persistence.EntityManager;

import tccjsf.dao.GenericDao;
import tccjsf.model.Usuario;
import tccjsf.util.JPAUtil;

@ManagedBean
public class ListarUsuarioBean {

private Usuario usuario;
private EntityManager entityManager;
private GenericDao<Usuario> usuarioDao;

public ListarUsuarioBean() {
	this.entityManager = JPAUtil.getEntityManagerFactory().createEntityManager();
	this.usuarioDao = new GenericDao<Usuario>(entityManager, Usuario.class);
	this.usuario = new Usuario();

}

public Usuario getUsuario() {
	return usuario;
}

public void setUsuario(Usuario usuario) {
	this.usuario = usuario;
}

public List<Usuario> getUsuarios(){
	
	return usuarioDao.listarTodos();
}

}
[/code]