Ae pessoal estou com uma duvida e queria a ajuda de vcs
como e que eu faço pra selecionar um nome em uma tabela, sendo que o nome tem q ser inserido pelo usuario ae o select busca o nome relacionado com o que o usuario digitou.
???__explique melhor
tipo eu tenho uma tabela cliente
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Entidade;
import java.io.Serializable;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
/**
*
* @author operador
*/
@Entity
public class EntidadeCLiente implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String nome;
private String sexo;
private String endereco;
private String modalidade;
private String observacao;
private int idade;
private int ddd;
private int telefone;
private int celular;
private double peso;
private double altura;
private String exameapresentado;
private int numero;
private String complemento;
private String bairro;
public int getCelular() {
return celular;
}
public void setCelular(int celular) {
this.celular = celular;
}
public String getBairro() {
return bairro;
}
public void setBairro(String bairro) {
this.bairro = bairro;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public int getDdd() {
return ddd;
}
public void setDdd(int ddd) {
this.ddd = ddd;
}
public double getAltura() {
return altura;
}
public void setAltura(double altura) {
this.altura = altura;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getExameapresentado() {
return exameapresentado;
}
public void setExameapresentado(String exameapresentado) {
this.exameapresentado = exameapresentado;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public String getModalidade() {
return modalidade;
}
public void setModalidade(String modalidade) {
this.modalidade = modalidade;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getObservacao() {
return observacao;
}
public void setObservacao(String observacao) {
this.observacao = observacao;
}
public double getPeso() {
return peso;
}
public void setPeso(double peso) {
this.peso = peso;
}
public String getSexo() {
return sexo;
}
public void setSexo(String sexo) {
this.sexo = sexo;
}
public int getTelefone() {
return telefone;
}
public void setTelefone(int telefone) {
this.telefone = telefone;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof EntidadeCLiente)) {
return false;
}
EntidadeCLiente other = (EntidadeCLiente) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return this.nome;
}
}
que contem nome sexo endereço etc
na pagina jsf eu queria um campo aonde o usuario digitaria o nome tipo joao
ae se tivesse um joão cadastrado retornaria ao cadastro joao.
desculpe e porque estou começando agora e sou leigo ainda.
vlw pela atenção
"SELECT * FROM clientes WHERE nome LIKE '" + campoPesquisa + "%'"
campoPesquisa é o campo onde tu vai digitar a pesquisa, então tudo q tu digitar la, devido ao “%” no final,vão mostrar todos os registros q iniciam por “J”
Se preferir, faz uma busca sobre a clausula LIKE, é bastante interessante
achu que o ruim de procurar pelo nome , vc tem que escrever certinho o nome da pessoa pois esta no seu banco,pq vc não faz uma pesquisa com algum campo de codigo e coloca um chave primária, para que não repita número pois com nome ja tive dificuldades pois pode ter um monte de joão , à não ser que vc tenha uma JTABLE que mostre todos os joão , assim fica mais prático e fácil de visualizar.
to começando a intender esse select fica na pagina jsf se n for muito encomodo vc poderia me dar um pedacinho do codigo
to começando agora e to com umas dificuldade
obrigado
e assim mesmo eu quero um campo ae as repostas vem em um jtable q vai lista todos relacionados ao nome
[quote=juninhovas]to começando a intender esse select fica na pagina jsf se n for muito encomodo vc poderia me dar um pedacinho do codigo
to começando agora e to com umas dificuldade
obrigado[/quote]
Eu nao colocaria na pagina jsf e sim em uma servlet, logo vc q deveria mostrar como ta organizado teu progeto, que pagina ta fazendo o que, pra poder te guiar em como proseguir
tenho duas entidade a cidade acima que a cliente
e tenho a entidade mensalidade
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Entidade;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
/**
*
* @author joao
*/
@Entity
@Table(name="mensalidade")
public class Mensalidade implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
private long id;
@ManyToOne
private EntidadeCLiente entidadeCLiente;
@Temporal(value = TemporalType.DATE)
private Date data_mensalidade;
private BigDecimal valor;
private String funcionario;
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Mensalidade other = (Mensalidade) obj;
if (this.id != other.id) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 73 * hash + (int) (this.id ^ (this.id >>> 32));
return hash;
}
public EntidadeCLiente getEntidadeCLiente() {
return entidadeCLiente;
}
public void setEntidadeCLiente(EntidadeCLiente entidadeCLiente) {
this.entidadeCLiente = entidadeCLiente;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getFuncionario() {
return funcionario;
}
public Date getData_mensalidade() {
return data_mensalidade;
}
public void setData_mensalidade(Date data_mensalidade) {
this.data_mensalidade = data_mensalidade;
}
public void setFuncionario(String funcionario) {
this.funcionario = funcionario;
}
public BigDecimal getValor() {
return valor;
}
public void setValor(BigDecimal valor) {
this.valor = valor;
}
}
pra cadastrar o usuario e normal
pra mim cadastrar uma mensalidade tem q ter um cliente
ae eu to usando o
<h:outputText value="Aluno:"/>
<h:selectOneMenu id="entidadeCliente" value="#{mensalidadeController.selected.entidadeCLiente}" required="true" requiredMessage="Selecione um Aluno">
<f:selectItems value="#{entidadeCLienteController.itemsAvailableSelectOne}"/>
</h:selectOneMenu>
so que ele lista todos ficando uma lista muito grande
pagina do Create da mensalidade
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.prime.com.tr/ui"
>
<h:head>
<title>Mensalidade</title>
</h:head>
<h:body>
<f:view>
<h:form >
<p:menubar >
<p:submenu label="Inicio">
<p:menuitem label="Pagina Inicial " url="../index.jsf" > </p:menuitem>
</p:submenu>
<p:submenu label="cadastrar">
<p:menuitem label="aluno">
<h:commandLink action="#{mensalidadeController.prepareCreate}" value="aluno" immediate="true"/>
</p:menuitem>
</p:submenu>
<p:submenu label="consultar">
<p:menuitem label="consultar" url="List.jsf" > </p:menuitem>
</p:submenu>
</p:menubar>
<h:panelGroup id="messagePanel" layout="block">
<h:messages errorStyle="color: red" infoStyle="color: green" layout="table"/>
</h:panelGroup>
<br/>
<br/>
<center>
<div style="background-color:#FFF8DC;text-align:center; width:400px; height:30px;border:3px solid black;">
<font size="5" color="black"> Mensalidade </font>
</div>
<div style="border:3px solid black; width:400px; height:150px;margin-top:3px; ">
<br/>
<h:panelGrid columns="3">
<h:outputLabel value="Data:"/>
<p:calendar id="data_mensalidade" value="#{mensalidadeController.selected.data_mensalidade}" pattern="dd-MM-yyyy" required="true" requiredMessage="campo Data esta em branco"/>
</h:panelGrid>
<h:panelGrid columns="2">
<h:outputText value="Aluno:"/>
<h:selectOneMenu id="entidadeCliente" value="#{mensalidadeController.selected.entidadeCLiente}" required="true" requiredMessage="Selecione um Aluno">
<f:selectItems value="#{entidadeCLienteController.itemsAvailableSelectOne}"/>
</h:selectOneMenu>
<h:outputLabel value="Valor:"/>
<h:inputText id="valor" size="12"
maxlength="10"
value="#{mensalidadeController.selected.valor}"
required="true" label="Valor" requiredMessage="campo valor esta em branco">
<f:convertNumber minFractionDigits="2"/>
</h:inputText>
<h:outputText value="Funcionario:"/>
<h:inputText id="funcionario" value="#{mensalidadeController.selected.funcionario}" required="true" requiredMessage="campo Funcionario esta em Branco"/><br/>
</h:panelGrid>
</div>
<div style="background-color:#FFF8DC;text-align:center; width:400px; height:30px;border:3px solid black;margin-top:3px;" >
<h:commandLink action="#{mensalidadeController.create}" >
<img src="./../resources/BotaoOK.png" height="22" border="0" alt="BotaoCadastrar" vspace="3"/>
</h:commandLink>
<h:commandLink action="#{mensalidadeController.prepareCreate}" immediate="true" >
<img src="./../resources/limpa.jpg" height="22" border="0" alt="BotaoLimpar" vspace="3"/>
</h:commandLink>
</div>
</center>
</h:form>
</f:view>
</h:body>
</html>
eu queria de antes de abrir a pagina cadastro da mensalidade abrise uma pagina pra selecionar por nome
ae pode listar em jtable depois selecionar o desejado ae depois redirecionar para a pagina Create da mensalidade
com o campo aluno ja preenchido com o nome selecionado