Manter dados das variáveis apos trocar de frame
Caros.
Estou treinando em Java, fiz uma aplicação que busca dados da visita no banco a partir de parte do nome, retornando nome e seu respectivo ID, guardo todos os Id em uma array, os nomes vão para uma jcombobox onde seleciono o nome que quero, retornando o index do nome escolhido, assim posso com o index buscar o ID respectivo para buscar e carregar todos os dados da visita escolhida.
Ocorre que tudo funciona até o ponto onde vou buscar na array o ID que preciso, neste momento o array já está vazio, preciso saber porque ele está sendo zerado.
Como fazer pra ir de uma frame a outra sem preder as informações armazenadas na classe cadastroVisita.
Desde já, Obrigado.
Abaixo está o código da classe principal onde inicio a busca dos nomes e ID no banco.
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
comboboxlistavisitas listuser= new comboboxlistavisitas();
try {
if(jTextField4.getText()==""||jTextField4.getText().trim().isEmpty()||jTextField4.getText()==null){
JOptionPane.showMessageDialog(rootPane, "Informar um nome");
jTextField4.grabFocus();
}else{
// aqui seto nome da visita na classe cadastroVisita, o nome digitado na Jtext
acessocadvis().setNomeVisita(jTextField4.getText().toUpperCase());
//Aqui faço a pesquisa dos nomes no banco e recebo a array dos ID, e também já carrego a com
acessocadvis().setArrvisita(caduserDAO.listavisitascombo(acessocadvis().getNomeVisita()));
//listuser.setVisible(true);
}
Aqui está o método da classe DAO que faz a busca no banco
public ArrayList<Integer> listavisitascombo(String nome){
/// ArrayList usuarios=new ArrayList();
comboboxlistavisitas listuser= new comboboxlistavisitas();
String SELECT3=" SELECT * FROM cadastro WHERE nome_visita LIKE ?";
//Usuario user1 =new Usuario();
String temp;
try {
conn=conexaoBd.conectar();
pstm=conn.prepareStatement(SELECT3);
pstm.setString(1,'%'+nome+'%');
rs=pstm.executeQuery();
//System.out.println('%'+nome+'%');
//DefaultComboBoxModel users= null;
int i=0;
while(rs.next()){
//System.out.println(rs.getString("nome_visita"));
temp=(rs.getString("nome_visita"));
arridcombo.add(rs.getInt("indice"));
listuser.jComboBox1.addItem(temp);///////acessa o jframe e adiciona os itens na combobox
//System.out.println(arridcombo.get(0));
}
listuser.setVisible(true);
//System.out.println("teste2");
} catch (Exception e) {
System.err.println("Ocorreu um erro, causa:"+e.getMessage());
e.printStackTrace();
}finally{
conexaoBd.desconectar(conn, pstm, rs);
//System.out.println("banco fechado");
}
return arridcombo;
}
Este é o código da jcombobox que retorna a index do nome escolhido
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
principal pri=new principal();
id=jComboBox1.getSelectedIndex();
pri.setcadastrovisita(id);
dispose();
// TODO add your handling code here:
}
Aqui é onde volto pra classe principal onde irei fazer a busca dos dados completos do nome selecionado, aqui é onde a array com od IDs já esta zerada.
veja que até adicionei uma saáda pra ver o conteúdo da array.
public void setcadastrovisita(int idcombobox){
this.idcombobox=idcombobox;
System.out.println(acessocadvis().getArrvisita());
//A linha atribui à variavel o indice da visita correspondente ao id do combobox visita selecionada no combobox.
int indice= acessocadvis().getArrvisita().get(this.idcombobox);
//System.out.println(indice);
//cadvis.buscaVisita(indice);// passa o indice para o cadastroVisita buscar os dados no banco
//acessocadvis().setIdselecvisita(this.idcombobox);
}
Minha classe cadastroVisita
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package recepcao;
import java.sql.Array;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import javafx.scene.chart.PieChart.Data;
import javax.swing.JOptionPane;
/**
*
* @author at22502
*/
public class cadastroVisita {
private int indice;
private String nomeVisita;
private String sobrenomeVisita;
private String empresaVisita;
private String docVisita;
private String placaVeiculo;
private String tipoVeiculo;
private String localVisita;
private String finalidadeVisita;
private String campo08;
private String campo09;
private String funcVisitado;
private String empresaVisitado;
private String deptoVisitado;
private String ramalVisitado;
private String areaAcesso;
private String Campo15;
private Data dataRegistro;
private Data dataSaida;
private String campo17;
private String campo18;
private String campo19;
private String campo20;
private String campo21;
private String campo22;
private String campo23;
private String Campo24;
private String Campo25;
private String dataVisita;
private int qtdVisitas;
private String foto;
private String documento1;
private String documento2;
private String documento3;
private String frase;
private String dataCadastro;
private ArrayList<Integer>arrvisita=new ArrayList<>();
private int idselecvisita;
public cadastroVisita(){
}
///////////////////////////////////////////////
//// METODO CARREGA DADOS VISITA /////
///////////////////////////////////////////////
public void CaregaCamposVisita(int indice){
String SELECT=" SELECT * FROM usuario WHERE indice=?";
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
String usernome;
ArrayList<Integer> arridcombo = new ArrayList<>();
try {
conn=conexaoBd.conectar();
pstm=conn.prepareStatement(SELECT);
pstm.setInt(1,indice);
//pstm.setString(2,senha);
rs=pstm.executeQuery();
while(rs.next()){
setNomeVisita(rs.getString("nome_visita"));
setDocVisita(rs.getString("doc_visita"));
setSobrenomeVisita(rs.getString("sobrenome_visita"));
setEmpresaVisita(rs.getString("empresa_visita"));
setPlacaVeiculo(rs.getString("placa_veiculo"));
setTipoVeiculo(rs.getString("tipo_veiculo"));
setAreaAcesso(rs.getString("area_acesso"));
setCampo15(rs.getString("campo15"));
}
} catch (Exception e) {
System.err.println("Ocorreu um erro, causa:"+e.getMessage());
e.printStackTrace();
}finally{
conexaoBd.desconectar(conn, pstm, rs);
//System.out.println("banco fechado");
}
}
////////////////////////////////////////////
//////////////METODOS SET //////////////////
//////////////////////////////////////////
public void setIdselecvisita(int idselecvisita) {
this.idselecvisita = idselecvisita;
//System.out.println(this.idselecvisita +" no get id");
//System.out.println(nomeVisita);
}
public void setArrvisita(ArrayList<Integer> arrvisita) {
this.arrvisita = arrvisita;
System.out.println(this.arrvisita+" no SET");
}
public void setIndice(int indice) {
this.indice = indice;
}
public void setNomeVisita(String nomeVisita) {
this.nomeVisita = nomeVisita;
//System.out.println(this.nomeVisita+" cadvisteste");
}
public void setSobrenomeVisita(String sobreomeVisita) {
this.sobrenomeVisita = sobreomeVisita;
}
public void setEmpresaVisita(String empresaVisita) {
this.empresaVisita = empresaVisita;
}
public void setDocVisita(String docVisita) {
this.docVisita = docVisita;
}
public void setPlacaVeiculo(String placaVeiculo) {
this.placaVeiculo = placaVeiculo;
}
public void setTipoVeiculo(String tipoVeiculo) {
this.tipoVeiculo = tipoVeiculo;
}
public void setLocalVisita(String localVisita) {
this.localVisita = localVisita;
}
public void setFinalidadeVisita(String finalidadeVisita) {
this.finalidadeVisita = finalidadeVisita;
}
public void setCampo08(String Campo08) {
this.campo08 = Campo08;
}
public void setCampo09(String Campo09) {
this.campo09 = Campo09;
}
public void setFuncVisitado(String funcVisitado) {
this.funcVisitado = funcVisitado;
}
public void setEmpresaVisitado(String empresaVisitado) {
this.empresaVisitado = empresaVisitado;
}
public void setDeptoVisitado(String deptoVisitado) {
this.deptoVisitado = deptoVisitado;
}
public void setRamalVisitado(String ramalVisitado) {
this.ramalVisitado = ramalVisitado;
}
public void setAreaAcesso(String areaAcesso) {
this.areaAcesso = areaAcesso;
}
public void setCampo15(String Campo15) {
this.Campo15 = Campo15;
}
public void setDataRegistro(Data dataRegistro) {
this.dataRegistro = dataRegistro;
}
public void setDataSaida(Data dataSaida) {
this.dataSaida = dataSaida;
}
public void setCampo17(String campo17) {
this.campo17 = campo17;
}
public void setCampo18(String campo18) {
this.campo18 = campo18;
}
public void setCampo19(String campo19) {
this.campo19 = campo19;
}
public void setCampo20(String campo20) {
this.campo20 = campo20;
}
public void setCampo21(String campo21) {
this.campo21 = campo21;
}
public void setCampo22(String campo22) {
this.campo22 = campo22;
}
public void setCampo23(String campo23) {
this.campo23 = campo23;
}
public void setCampo24(String Campo24) {
this.Campo24 = Campo24;
}
public void setCampo25(String Campo25) {
this.Campo25 = Campo25;
}
public void setDataVisita(String dataVisita) {
this.dataVisita = dataVisita;
}
public void setQtdVisitas(int qtdVisitas) {
this.qtdVisitas = qtdVisitas;
}
public void setFoto(String foto) {
this.foto = foto;
}
public void setDocumento1(String documento1) {
this.documento1 = documento1;
}
public void setDocumento2(String documento2) {
this.documento2 = documento2;
}
public void setDocumento3(String documento3) {
this.documento3 = documento3;
}
public void setFrase(String frase) {
this.frase = frase;
}
public void setDataCadastro(String dataCadastro) {
this.dataCadastro = dataCadastro;
}
////////////////////////////////////////////
/////// FIM METODOS SET////////////////
//////////////////////////////////////////
//////////////////////////////////
/////INICIO METODOS GET//////
////////////////////////////////
public int getIdselecvisita() {
return this.idselecvisita;
}
public ArrayList<Integer> getArrvisita() {
System.out.println(arrvisita+" no GET");
return arrvisita;
}
public int getIndice() {
return indice;
}
public String getNomeVisita() {
return nomeVisita;
}
public String getSobreomeVisita() {
return sobrenomeVisita;
}
public String getEmpresaVisita() {
return empresaVisita;
}
public String getDocVisita() {
return docVisita;
}
public String getPlacaVeiculo() {
return placaVeiculo;
}
public String getTipoVeiculo() {
return tipoVeiculo;
}
public String getLocalVisita() {
return localVisita;
}
public String getFinalidadeVisita() {
return finalidadeVisita;
}
public String getCampo08() {
return campo08;
}
public String getCampo09() {
return campo09;
}
public String getFuncVisitado() {
return funcVisitado;
}
public String getEmpresaVisitado() {
return empresaVisitado;
}
public String getDeptoVisitado() {
return deptoVisitado;
}
public String getRamalVisitado() {
return ramalVisitado;
}
public String getAreaAcesso() {
return areaAcesso;
}
public String getCampo15() {
return Campo15;
}
public Data getDataRegistro() {
return dataRegistro;
}
public Data getDataSaida() {
return dataSaida;
}
public String getCampo17() {
return campo17;
}
public String getCampo18() {
return campo18;
}
public String getCampo19() {
return campo19;
}
public String getCampo20() {
return campo20;
}
public String getCampo21() {
return campo21;
}
public String getCampo22() {
return campo22;
}
public String getCampo23() {
return campo23;
}
public String getCampo24() {
return Campo24;
}
public String getCampo25() {
return Campo25;
}
public String getDataVisita() {
return dataVisita;
}
public int getQtdVisitas() {
return qtdVisitas;
}
public String getFoto() {
return foto;
}
public String getDocumento1() {
return documento1;
}
public String getDocumento2() {
return documento2;
}
public String getDocumento3() {
return documento3;
}
public String getFrase() {
return frase;
}
public String getDataCadastro() {
return dataCadastro;
}
/////////////////////////////
// FIM METODOS GET
///////////////////////////////
}Discussão (0)
Carregando comentários...