Gostaria de saber como poderia fazer para na hora que eu for fazer um cadastro ir gerando codigos automaticos por exemplo eu cadastrei a primeira pessoa ela e codigo 1 , ai na hora que eu cadastro a segunda pessoa que seria codigo 2 ele colocar ja automatico porque no momento estou digitando o codigo em vez de ele colocar automatico como faço?
Código:
Cliente
package Modelo;
import java.util.Calendar;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import datechooser.beans.DateChooserCombo;
@Entity
public class Cliente {
@Id
private int codcliente;
@Temporal(TemporalType.DATE)
private Calendar data;
private String NomeCompleto;
private String endereco;
private String Bairro;
private String Cidade;
private String uf;
private String cep;
private String telefone;
private String complemento;
private String email;
private String rg;
private String cpf;
@Temporal(TemporalType.DATE)
private Calendar datadenascimento;
public String getBairro() {
return Bairro;
}
public void setBairro(String bairro) {
Bairro = bairro;
}
public String getCep() {
return cep;
}
public void setCep(String cep) {
this.cep = cep;
}
public String getCidade() {
return Cidade;
}
public void setCidade(String cidade) {
Cidade = cidade;
}
public int getCodcliente() {
return codcliente;
}
public void setCodcliente(int codcliente) {
this.codcliente = codcliente;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getNomeCompleto() {
return NomeCompleto;
}
public void setNomeCompleto(String nomeCompleto) {
NomeCompleto = nomeCompleto;
}
public String getRg() {
return rg;
}
public void setRg(String rg) {
this.rg = rg;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getUf() {
return uf;
}
public void setUf(String uf) {
this.uf = uf;
}
public Calendar getData() {
return data;
}
public void setData(Calendar data) {
this.data = data;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public Calendar getDatadenascimento() {
return datadenascimento;
}
public void setDatadenascimento(Calendar datadenascimento) {
this.datadenascimento = datadenascimento;
}
}
janela cliente
import java.awt.Container;
import java.awt.event.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.swing.*;
import javax.swing.text.MaskFormatter;
import org.eclipse.nebula.widgets.datechooser.DateChooser;
import datechooser.beans.DateChooserCombo;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import Modelo.Cliente;
// Ctrl+Shift+F => Formata o código
// Ctrl+A e Ctrl+i => Formata a seleção
public class JanelaCliente extends JFrame {
private JLabel rotulo1, rotulo2, rotulo3, rotulo4, rotulo5, rotulo6,
rotulo7, rotulo8, rotulo9, rotulo10, rotulo11, rotulo12, rotulo13,
rotulo14, rotulo15;
private JTextField caixa1, caixa3, caixa4, caixa5,caixa7,
caixa8, caixa9,caixa12, caixa13;
private JButton botao1, botao2, botao3, botao4, botao5, botao6;
DateChooserCombo d = new DateChooserCombo();
DateChooserCombo b = new DateChooserCombo();
JFormattedTextField caixa2,caixa15,caixa6,caixa14,caixa11,caixa10;
private static EntityManagerFactory fabricaDeEntidades = null;
private static EntityManager gerenciador = null;
ImageIcon icone;
ImageIcon icone1;
ImageIcon icone2;
ImageIcon icone3;
ImageIcon icone4;
ImageIcon icone5;
public JanelaCliente(EntityManagerFactory fabricaDeEntidades2,
EntityManager gerenciador2) throws Exception {
super("Cadastro de Clientes");
Container tela = getContentPane();
icone = new ImageIcon("001.gif");
icone1 = new ImageIcon("005.gif");
icone2 = new ImageIcon("126.gif");
icone3 = new ImageIcon("041.gif");
// icone4 = new ImageIcon("100.gif");
icone5 = new ImageIcon("004.gif");
botao1 = new JButton (icone);
botao2 = new JButton (icone1);
botao3 = new JButton (icone2);
botao4 = new JButton (icone3);
// botao5 = new JButton (icone4);
botao6 = new JButton (icone5);
tela.setLayout(null);
fabricaDeEntidades = fabricaDeEntidades2;
gerenciador = gerenciador2;
rotulo1 = new JLabel("Codigo:");
rotulo2 = new JLabel("Data:");
rotulo3 = new JLabel("Nome:");
rotulo5 = new JLabel("Endereço:");
rotulo6 = new JLabel("Cpf:");
rotulo7 = new JLabel("Bairro:");
rotulo8 = new JLabel("Cidade:");
rotulo9 = new JLabel("Uf:");
rotulo10 = new JLabel("Cep:");
rotulo11 = new JLabel("Telefone:");
rotulo12 = new JLabel("Complemento:");
rotulo13 = new JLabel("Email:");
rotulo14 = new JLabel("Rg:");
rotulo15 = new JLabel("Dta de Nascimento:");
//MaskFormatter formater = new MaskFormatter();
// formater.setMask("##/##/####");
//MaskFormatter formater2 = new MaskFormatter();
//formater2.setMask("##/##/####");
MaskFormatter formater3 = new MaskFormatter();
formater3.setMask("###.###.###-##");
formater3.setValidCharacters("[telefone removido]");
MaskFormatter formater4 = new MaskFormatter();
formater4.setMask("##.###.###-#");
formater4.setValidCharacters("[telefone removido]");
MaskFormatter formater5 = new MaskFormatter();
formater5.setMask("(##)####-####");
formater5.setValidCharacters("[telefone removido]");
MaskFormatter formater6 = new MaskFormatter();
formater6.setMask("#####-###");
formater6.setValidCharacters("[telefone removido]");
caixa6 = new javax.swing.JFormattedTextField(caixa6);
caixa14 = new javax.swing.JFormattedTextField(caixa14);
caixa1 = new JTextField();
d = new DateChooserCombo();
//formater.install(d);
caixa3 = new JTextField();
caixa5 = new JTextField();
caixa6 = new JFormattedTextField();
formater3.install(caixa6);
caixa7 = new JTextField();
caixa8 = new JTextField();
caixa9 = new JTextField();
caixa10 = new JFormattedTextField();
formater6.install(caixa10);
caixa11 = new JFormattedTextField();
formater5.install(caixa11);
caixa12 = new JTextField();
caixa13 = new JTextField();
caixa14 = new JFormattedTextField();
formater4.install(caixa14);
b = new DateChooserCombo();
//formater2.install(caixa15);
//botao1 = new JButton("Incluir");
//botao2 = new JButton("Alterar");
//botao3 = new JButton("Excluir");
//botao4 = new JButton("Listar Clientes");
//botao5 = new JButton("Gerar Relatório");
//botao6 = new JButton("Fechar");
// coluna, linha, largura, altura
rotulo1.setBounds(21, 11, 43, 20);
caixa1.setBounds(110, 11, 50, 20);
botao1.setBounds(20, 279, 100, 20);
botao2.setBounds(130, 279, 100, 20);
botao3.setBounds(240, 279, 100, 20);
botao4.setBounds(350, 279, 150, 20);
// botao5.setBounds(510, 279, 150, 20);
botao6.setBounds(510, 279, 150, 20);
rotulo2.setBounds(170, 11, 100, 20);
d.setBounds(220, 11, 90, 20);
rotulo3.setBounds(21, 42, 100, 20);
caixa3.setBounds(110, 42, 550, 20);
rotulo5.setBounds(21, 73, 100, 20);
caixa5.setBounds(110, 73, 300, 20);
rotulo6.setBounds(21, 104, 100, 20);
caixa6.setBounds(110, 104, 150, 20);
rotulo7.setBounds(270, 104, 100, 20);
caixa7.setBounds(330, 104, 330, 20);
rotulo8.setBounds(21, 135, 100, 20);
caixa8.setBounds(110, 135, 236, 20);
rotulo9.setBounds(358, 135, 32, 20);
caixa9.setBounds(400, 135, 50, 20);
rotulo10.setBounds(466, 135, 43, 20);
caixa10.setBounds(519, 135, 141, 20);
rotulo11.setBounds(21, 166, 100, 20);
caixa11.setBounds(110, 166, 141, 20);
rotulo12.setBounds(261, 166, 100, 20);
caixa12.setBounds(352, 166, 308, 20);
rotulo13.setBounds(21, 197, 100, 20);
caixa13.setBounds(110, 197, 280, 20);
rotulo14.setBounds(415, 197, 100, 20);
caixa14.setBounds(460, 197, 120, 20);
rotulo15.setBounds(415, 73, 120, 20);
b.setBounds(530, 73, 90, 20);
tela.add(rotulo1);
tela.add(caixa1);
tela.add(rotulo2);
tela.add(d);
tela.add(botao1);
tela.add(botao2);
tela.add(botao3);
tela.add(botao4);
// tela.add(botao5);
tela.add(botao6);
tela.add(rotulo3);
tela.add(caixa3);
tela.add(rotulo5);
tela.add(caixa5);
tela.add(rotulo6);
tela.add(caixa6);
tela.add(rotulo7);
tela.add(caixa7);
tela.add(rotulo8);
tela.add(caixa8);
tela.add(rotulo9);
tela.add(caixa9);
tela.add(rotulo10);
tela.add(caixa10);
tela.add(rotulo11);
tela.add(caixa11);
tela.add(rotulo12);
tela.add(caixa12);
tela.add(rotulo13);
tela.add(caixa13);
tela.add(rotulo14);
tela.add(caixa14);
tela.add(rotulo15);
tela.add(b);
caixa6.addFocusListener(new FocusAdapter() {
String A,B,C,D,E,F,G,H,I,J,K = "";
int a,b,c,d,x,f,g,h,i,j,k,s1,s2;
public void focusLost(FocusEvent e) {
A = caixa6.getText().substring(0,1);
B = caixa6.getText().substring(1,2);
C = caixa6.getText().substring(2,3);
D = caixa6.getText().substring(4,5);
E = caixa6.getText().substring(5,6);
F = caixa6.getText().substring(6,7);
G = caixa6.getText().substring(8,9);
H = caixa6.getText().substring(9,10);
I = caixa6.getText().substring(10,11);
J = caixa6.getText().substring(12,13);
K = caixa6.getText().substring(13);
a = Integer.parseInt(A);
b = Integer.parseInt(B);
c = Integer.parseInt(C);
d = Integer.parseInt(D);
x = Integer.parseInt(E);
f = Integer.parseInt(F);
g = Integer.parseInt(G);
h = Integer.parseInt(H);
i = Integer.parseInt(I);
s1 = ((10*a)+(9*b)+(8*c)+(7*d)+(6*x)+(5*f)+(4*g)+(3*h)+(2*i))%11;
if((s1==0) || (s1==1)) {
j = 0;
}
else {
j = (11-s1);
}
/*
* OBTENDO O DÍGITO k
*
* O resultado da soma, S2 = 11a+10b+9c+8d+7x+6f+5g+4h+3i+2j, é dividido por 11 e o RESTO
* dessa divisão:
*
* RESTO k
* Se for 0 ou 1 O dígito k é [0] (zero)
* Se for 2, 3, 4, 5, 6, 7, 8, 9 ou 10 O dígito k é [11 - RESTO]
*
*/
s2 = ((11*a)+(10*b)+(9*c)+(8*d)+(7*x)+(6*f)+(5*g)+(4*h)+(3*i)+(2*j))%11;
if((s2==0) || (s2==1)) {
k = 0;
}
else {
k = (11-s2);
}
// compara os resultados j com o J e k com o K e verifica se todos os dígitos não são iguais
if((j != (Integer.parseInt(J))) || (k != (Integer.parseInt(K))) || ((a==b)&(b==c)&(c==d)&(d==x)&(x==f)&(f==g)&(g==h)&(h==i))) {
JOptionPane.showMessageDialog(null,"CPF inválido", "Informação ", JOptionPane.INFORMATION_MESSAGE);
caixa6.setText("");
caixa6.requestFocus();
}
}
});
caixa1.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub
}
// Ao perder o foco do caixa1 é executado este método
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
if (!caixa1.getText().trim().equals("")) {
// Se o campo conter um valor diferente de vazio
Cliente objetoCliente = gerenciador.find(Cliente.class,Integer.parseInt(caixa1.getText()));
if (objetoCliente != null) {
d.setText(objetoCliente.getData().toString());
caixa3.setText("" + objetoCliente.getNomeCompleto());
caixa5.setText("" + objetoCliente.getEndereco());
caixa6.setText("" + objetoCliente.getCpf());
caixa7.setText("" + objetoCliente.getBairro());
caixa8.setText("" + objetoCliente.getCidade());
caixa9.setText("" + objetoCliente.getUf());
caixa10.setText("" + objetoCliente.getCep());
caixa11.setText("" + objetoCliente.getTelefone());
caixa12.setText("" + objetoCliente.getComplemento());
caixa13.setText("" + objetoCliente.getEmail());
caixa14.setText("" + objetoCliente.getRg());
b.setText(""
+ objetoCliente.getDatadenascimento());
botao1.setEnabled(false);
JOptionPane.showMessageDialog(null,
"Cliente já cadastrado com este código!!!");
} else {
botao1.setEnabled(true);
d.setText("");
caixa3.setText("");
caixa5.setText("");
caixa6.setText("");
caixa7.setText("");
caixa8.setText("");
caixa9.setText("");
caixa10.setText("");
caixa11.setText("");
caixa12.setText("");
caixa13.setText("");
caixa14.setText("");
b.setText("");
JOptionPane.showMessageDialog(null,
"Código livre para cadastro!");
}
}
}
});
d.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
d.setText("");
}
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
b.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
b.setText("");
}
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
botao1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
// Persistir dados
// inclusão de um novo registro
if (caixa1.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o código do cliente!");
caixa1.requestFocus();
}//else if (d.getText().trim().equals("")) {
// JOptionPane.showMessageDialog(null, "Informe a Data!");
// d.requestFocus();
// }
else if (caixa3.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Nome Completo do Cliente!");
caixa3.requestFocus();
} else if (caixa5.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Endereço do Cliente!");
caixa5.requestFocus();
} else if (caixa6.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Cpf do Cliente!");
caixa6.requestFocus();
} else if (caixa7.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Bairro do Cliente!");
caixa7.requestFocus();
} else if (caixa8.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe a Cidade do Cliente!");
caixa8.requestFocus();
} else if (caixa9.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe a Uf do Cliente!");
caixa9.requestFocus();
} else if (caixa10.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Cep do Cliente!");
caixa10.requestFocus();
} else if (caixa11.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Telefone do Cliente!");
caixa11.requestFocus();
} else if (caixa12.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Complemento!");
caixa12.requestFocus();
} else if (caixa13.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Email do Cliente!");
caixa13.requestFocus();
} else if (caixa14.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Rg do Cliente!");
caixa14.requestFocus();
}// else if (b.getText().trim().equals("")) {
//JOptionPane.showMessageDialog(null,
// "Informe a Data de Nascimento do Cliente!");
// b.requestFocus();
// }
else {
Cliente objetoCliente = new Cliente();
objetoCliente.setCodcliente(Integer.parseInt(caixa1.getText()));
objetoCliente.setData(d.getSelectedDate());
objetoCliente.setNomeCompleto(caixa3.getText());
objetoCliente.setEndereco(caixa5.getText());
objetoCliente.setCpf(caixa6.getText());
objetoCliente.setBairro(caixa7.getText());
objetoCliente.setCidade(caixa8.getText());
objetoCliente.setUf(caixa9.getText());
objetoCliente.setCep(caixa10.getText());
objetoCliente.setTelefone(caixa11.getText());
objetoCliente.setComplemento(caixa12.getText());
objetoCliente.setEmail(caixa13.getText());
objetoCliente.setRg(caixa14.getText());
objetoCliente.setDatadenascimento(b.getSelectedDate());
gerenciador.getTransaction().begin();
gerenciador.persist(objetoCliente);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Cliente Incluído com Sucesso!");
caixa1.setText(null);d.setText(null);
caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);b.setText(null);
}
}
});
botao2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// fecha a janela
Cliente c = new Cliente();
c.setCodcliente(Integer.parseInt(caixa1.getText()));
c.setData(d.getSelectedDate());
c.setNomeCompleto(caixa3.getText());
c.setEndereco(caixa5.getText());
c.setCpf(caixa6.getText());
c.setBairro(caixa7.getText());
c.setCidade(caixa8.getText());
c.setUf(caixa9.getText());
c.setCep(caixa10.getText());
c.setTelefone(caixa11.getText());
c.setComplemento(caixa12.getText());
c.setEmail(caixa13.getText());
c.setRg(caixa14.getText());
c.setDatadenascimento(b.getSelectedDate());
gerenciador.getTransaction().begin();
gerenciador.merge(c);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Registro Alterado Com Sucesso");
caixa1.setText(null);d.setText(null);
caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);b.setText(null);
}
});
botao3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
Cliente c = gerenciador.find(Cliente.class, Integer.parseInt(caixa1.getText()));
gerenciador.getTransaction().begin();
gerenciador.remove(c);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Registro Excluido Com Sucesso");
caixa1.setText(null);d.setText(null);
caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);b.setText(null);
}
});
botao4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
@SuppressWarnings("unused")
//ListarCliente l = new ListarCliente(fabricaDeEntidades,gerenciador);
ListarCliente list = new ListarCliente(fabricaDeEntidades, gerenciador);
}
});
//botao5.addActionListener(new ActionListener() {
// public void actionPerformed(ActionEvent e) {
// // cria nova janela
// RelatorioCliente rep = new RelatorioCliente();
// JasperPrint relat;
// try {
// relat = rep.gerarRelatorioCliente();
// JasperViewer.viewReport(relat, false);
// } catch (Exception e1) {
// e1.printStackTrace();
// }
// } // /
// });
botao6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
dispose();
}
});
// setSize(largura, altura);
setSize(700, 397);
setVisible(true);
setLocationRelativeTo(null);
}
public static void main(String[] args) throws Exception {
fabricaDeEntidades = Persistence
.createEntityManagerFactory("TurmaN40PostgreSQL");
gerenciador = fabricaDeEntidades.createEntityManager();
JanelaCliente app = new JanelaCliente(fabricaDeEntidades, gerenciador);
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
não tenho a minima ideia de como faço? alguém me ajuda?