Problema ao consultar um cargo cadastrado

olá eu sou estudante de programação e estou fazendo um curso do bradesco onde tem q fazer um sistema de cadastro de cargo e consulta se o cargo foi cadastrado buscando os dados no banco sql, porem quando eu faço o cadastro do cargo, ele ate envia o cargo q foi digitado para o banco de dados, porem quando eu abro a tela de consultar o cargo e digito o cargo que foi cadastrado, no resultado ele me mostra como resposta algo parecido com isso sistema.entidades.Cargo@41217cf0.

vou enviar os códigos da tela de consulta e da class cargo, a tela de cadastro, acho que não precisa mudar pois, o cadastro está funcionando corretamente, o problema está na consulta

código da tela de consulta

private void criarEventos() { botaoPesquisar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { sqlPesquisarCargos(campoCargo.getText()); } });

listaCargos.addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { cargoAtual = listaCargos.getSelectedValue(); if(cargoAtual == null) { botaoEditar.setEnabled(false); botaoExcluir.setEnabled(false); }else { botaoEditar.setEnabled(true); botaoExcluir.setEnabled(true); } } }); }

private void sqlPesquisarCargos(String nome) { Connection conexao; Statement instrucaoSQL; ResultSet resultados; try { conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);

        instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);

        resultados = instrucaoSQL.executeQuery("SELECT * FROM cargos WHERE nome like '%"+nome+"%'");
        
        listasCargosModelo.clear();
        
        while (resultados.next()) {
            Cargo cargo = new Cargo();
            cargo.setId(resultados.getInt("id"));
            cargo.setNome(resultados.getString("nome"));
            
            listasCargosModelo.addElement(cargo);
        }
 
    }catch (SQLException ex) {
        JOptionPane.showMessageDialog(null,  "Ocorreu um erro ao consultas os Cargos.");
        Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
    }

}

e aqui é a class cargo

package sistema.entidades;

public class Cargo {

private Integer id;
private String nome;

public Integer getId() {
    return id;
}

public void setId(Integer id) {
    this.id = id;
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}

}

Se alguém puder me ajudar, agradeco dms, gostaria de ve o sistema funcionando certinho… O que eu preciso mudar no codigo para que apareça o cargo que eu cadastrei na tela de cadastro apareça ao fazer a consulta na tela de consulta.

Essa é a implementação padrão do método toString() da classe Cargo.
Posta o fonte do seu listasCargosModelo.

private void sqlPesquisarCargos(String nome) {
//Conexão
Connection conexao;
//Instrução SQL
Statement instrucaoSQL;
//Resultados
ResultSet resultados;

        try {
            // Conectando ao banco de dados
            conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);
            
            // Criando A intrução SQL
            instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
            resultados = instrucaoSQL.executeQuery("SELECT * FROM cargos WHERE nome like '%"+nome+"%'");
            
            listasCargosModelo.clear();
            
            while (resultados.next()) {
                Cargo cargo = new Cargo();
                cargo.setId(resultados.getInt("id"));
                cargo.setNome(resultados.getString("Nome"));
                
                listasCargosModelo.addElement(cargo);
            }
        
        }catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,  "Ocorreu um erro ao consultas os Cargos.");
            Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
        }
}

Como você implementou esse listasCargosModelo?

desculpa eu n entendi, em um outro site q eu fiz essa pergunta o rapaz me falo que era pra atualizar os metodos getters e setters mais ai n entendi e como estão demorando pra responder, mandei a pergunta nesse aqui tbm.

tem esses codigos aqui q estão mais acima da tela de pesquisa

private void criarEventos() {
botaoPesquisar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
sqlPesquisarCargos(campoCargo.getText());
}
});

listaCargos.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
cargoAtual = listaCargos.getSelectedValue();
if(cargoAtual == null) {
botaoEditar.setEnabled(false);
botaoExcluir.setEnabled(false);
}else {
botaoEditar.setEnabled(true);
botaoExcluir.setEnabled(true);
}
}
});
}

forum

Você não tem um objeto listaCargos?
Imagino que ele seja do tipo JList, se ele é um JList, ele tem um ListModel associado, que provavelmente é esse seu objeto listasCargosModelo.

Pois bem, só estou pedindo para você postar o fonte desse listasCargosModelo.

Se ainda não entendeu, posta o código fonte da sua tela…

ok, vou mandar o codigo fonte, assim acho q fica mais facil pra vc, esse e da tela de consulta

package sistema.telas;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import sistema.BancoDeDados;
import sistema.entidades.Cargo;

//Criaremos a classe CargosConsultar a partir da linha 25, Conforme a indicação no codigo.

public class CargosConsultar extends JPanel {

Cargo cargoAtual;
JLabel labelTitulo, labelCargo;
JTextField campoCargo;
JButton botaoPesquisar, botaoEditar, botaoExcluir;
DefaultListModel<Cargo> listasCargosModelo = new DefaultListModel();
JList<Cargo> listaCargos;

public CargosConsultar() {
	criarComponentes();
	criarEventos();
}
private void criarComponentes() {
	setLayout(null); // Definimos que não será usado nenhum gerenciador de layout.
	
	//Nas linhas 43 a 55, instanciamos os componentes da tela.
	labelTitulo = new JLabel("Consulta de Cargos", JLabel.CENTER);
	labelTitulo.setFont(new Font(labelTitulo.getFont().getName(), Font.PLAIN, 20));
	labelCargo = new JLabel("Nome do cargo", JLabel.LEFT);
	campoCargo = new JTextField();
	botaoPesquisar = new JButton("Pesquisar Cargo");
	botaoEditar = new JButton("Editar Cargo");
	botaoEditar.setEnabled(false);
	botaoExcluir = new JButton("Excluir Cargo");
	botaoExcluir.setEnabled(false);
	listasCargosModelo = new DefaultListModel();
	listaCargos = new JList();
	listaCargos.setModel(listasCargosModelo);
	listaCargos.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
	
	//Nas linhas 58 a 64, definimos o posicionamento e o tamanho dos componentes na tela.
	labelTitulo.setBounds(20, 20, 660, 40);
	labelCargo.setBounds(150, 120, 400, 20);
	campoCargo.setBounds(150, 140, 400, 40);
	botaoPesquisar.setBounds(560, 140, 130, 40);
	listaCargos.setBounds(150, 200, 400, 240);
	botaoEditar.setBounds(560, 360, 130, 40);
	botaoExcluir.setBounds(560, 400, 130, 40);
	
	//Nas linhas 67 a 72 adicionamos os componentes a tela.
	add(labelTitulo);
	add(labelCargo);
	add(campoCargo);
	add(listaCargos);
	add(botaoPesquisar);
	add(botaoEditar);
	add(botaoExcluir);
	
	//Tornando a tela visível.
	setVisible(true);
	
}
private void criarEventos() {
	botaoPesquisar.addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			sqlPesquisarCargos(campoCargo.getText());
		}
	});
	botaoEditar.addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
		}
	});
	/*Nas linha 95 a 100 , definimos que, ao ser acionado, o botão Excluir Cargo irá
	chamar o método sqlDeletarCargo.*/
	botaoExcluir.addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			sqlDeletarCargo();
		}
	});
	/*Nas 103 a 116, definimos que, ao se selecionar algum cargo na lista, este será
	 armazenado na variável cargoAtual, e os botões Editar Cargo e Excluir Cargo serão habilitados. */
	listaCargos.addListSelectionListener(new ListSelectionListener() {
		@Override
		public void valueChanged(ListSelectionEvent e) {
			cargoAtual = listaCargos.getSelectedValue();
			if(cargoAtual == null) {
				botaoEditar.setEnabled(false);
				botaoExcluir.setEnabled(false);
			}else {
				botaoEditar.setEnabled(true);
				botaoExcluir.setEnabled(true);
			}
		}
	});
}
	/*Nas linhas 118 a 147, realizamos a conexão com o banco de dados para obtermos, por meio dele, todos os cargos
	cadastrados e adicioná-los à lista de seleção.*/
	private void sqlPesquisarCargos(String nome) {
		//Conexão
		Connection conexao;
		//Instrução SQL
		Statement instrucaoSQL;
		//Resultados
		ResultSet resultados;
		
		try {
			// Conectando ao banco de dados
			conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);
			
			// Criando A intrução SQL
			instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
			resultados = instrucaoSQL.executeQuery("SELECT * FROM cargos WHERE nome like '%"+nome+"%'");
			
			listasCargosModelo.clear();
			
			while (resultados.next()) {
				Cargo cargo = new Cargo();
				cargo.setId(resultados.getInt("id"));
				cargo.setNome(resultados.getString("nome"));
				
				listasCargosModelo.addElement(cargo);
			}
		
		}catch (SQLException ex) {
			JOptionPane.showMessageDialog(null,  "Ocorreu um erro ao consultas os Cargos.");
			Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
		}
}
/*Ao ser acionado o botão Excluir Cargo irá executar o método sqlDeletarCargo. na sintaxe das linhas 149 a 171, podemos ver que esse método irá
 irá se conectar com o banco de dados e executar a instrução SQL que irá remover o cargo selecionado.*/
private void sqlDeletarCargo() {
	
	int confirmacao = JOptionPane.showConfirmDialog(null, "Deseja realmente excluir o Cargo "+cargoAtual.getNome()+"?", "Excluir", JOptionPane.YES_NO_OPTION);
	if(confirmacao == JOptionPane.YES_OPTION) {
		// Conexão
		Connection conexao;
		// Intrução SQL
		Statement instrucaoSQL;
		// Resultados
		ResultSet resultados;
		
		try {
			// Conectando ao banco de dados
			conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);
			
			// Criando a instrução SQL
			instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
			instrucaoSQL.executeUpdate("DELETE cargos WHERE id="+cargoAtual.getId()+"");
			
			JOptionPane.showMessageDialog(null, "Cargo deletado com sucesso!");
		} catch(SQLException ex) {
			JOptionPane.showMessageDialog(null, "Ocorreu um erro ao excluir o Cargo.");
			Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
		}
	}
}

}Texto pré-formatado

aqui está o codigo fonte da tela de cadastro, se precisar

package sistema.telas;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import sistema.BancoDeDados;
import sistema.entidades.Cargo;

public class CargosInserir extends JPanel {

JLabel labelTitulo, labelCargo;
JTextField campoCargo;
JButton botaoGravar;

public CargosInserir() {
	criarComponentes();
	criarEventos();
}

private void criarComponentes() {
	//Na linha 34, estamos definindo que não usaremos nenhum gerenciador de layout.
	setLayout(null);
	
	/*Nas linhas 37 a 41 estamos instanciando os componentes da tela:
	 - Os componentes JLabel estão sendo inicializados com textos e alinhamentos especificos.
	 - Já o componente JButton, está sendo inicializado somente com seu texto de exibição.*/
	labelTitulo = new JLabel("Cadastro de Cargo", JLabel.CENTER);
	labelTitulo.setFont(new Font(labelTitulo.getFont().getName(), Font.PLAIN, 20));
	labelCargo = new JLabel("Nome do cargo", JLabel.LEFT);
	campoCargo = new JTextField();
	botaoGravar = new JButton("Adicionar Cargo");
	
	//Na linha 46 a 49, Definimos o posicionamento e o tamanho dos componentes na tela.
	labelTitulo.setBounds(20, 20, 660, 40);
	labelCargo.setBounds(150, 120, 400, 20);
	campoCargo.setBounds(150, 140, 400, 40);
	botaoGravar.setBounds(250, 380, 200, 40);
	
	//Na linha 52 a 55, adicionamos os componentes à tela.
	add(labelTitulo);
	add(labelCargo);
	add(campoCargo);
	add(botaoGravar);
	
	//Na linha 58, tornamos á tela visivel.
	setVisible(true);
}
/*Nas linhas 61 a 73,  estamos definindo que, ao ser acionado, o botão
 Adicionar Cargo irá criar uma instância da entidade Cargo atribuíndo ao cargo
 o valor do texto digitado no JTextField campoCargo e por fim chamar o
 método sqlInserirCargo.*/
private void criarEventos() {
	botaoGravar.addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			Cargo novoCargo = new Cargo();
			novoCargo.setNome(campoCargo.getText());
		
			sqlInserirCargo(novoCargo);
		}
	});
}
	//nas linhas 74 a 78, validamos o conteúdo do campo Nome do Cargo
	private void sqlInserirCargo(Cargo novoCargo) {
		
		//validando nome
		if(campoCargo.getText().length() <= 3 /*Caso não possua mais de 3 caractres, aparecerá a seguinte mensagem ao usuário.*/)  {
		JOptionPane.showMessageDialog(null, "Por favor, preencha o nome corretamente");
		return;
		}
	
	/*Nas linhas 86 a 106, realizamos a conexão com o banco de dados para inserir um novo cargo, de acordo com os dados que foram
	adicionados ao campo Nome do Cargo.*/
		
	//Conexão
	Connection conexao;
	//Instrução SQL
	Statement instrucaoSQL;
	//Resultados
	ResultSet resultados;
	
	try {
		//conectando ao banco de dados
		conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);
		
		//criando a instrução SQL
		instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
		instrucaoSQL.executeUpdate("INSERT INTO cargos (nome) VALUES ('"+novoCargo.getNome()+"')");
		
		JOptionPane.showMessageDialog(null, "Cargo adicionado com sucesso!");		
				
	}catch (SQLException ex) {
		JOptionPane.showMessageDialog(null, "Ocorreu um erro ao adicionar o Cargo.");
		Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
	}
}

}Texto pré-formatado

isso é tudo oq eu tenho, mais aquela class cargo, mas ela eu ja envei ela com todo o codigo nela e está ai em cima, nas respostas.

Não usa DefaultListModel, implementa o seu próprio ListModel estendendo a classe AbstractListModel e daí você apresenta os dados do jeito que você quiser, não vai nem precisar daquele laço fazendo addElement.

1 curtida

man, eu não entendo mt de java ainda, to começando agora, em quais linhas de codigos eu preciso mudar. fazer essas alterações que vc falo

Primeiramente crie o seu próprio ListModel para apresentar objetos do tipo Cargo:

package sistema.telas;

import java.util.List;

import javax.swing.AbstractListModel;

import sistema.entidades.Cargo;

@SuppressWarnings("serial")
public class CargoListModel extends AbstractListModel<String> {

    private List<Cargo> cargos;

    // vamos usar esse método pra atualizar o conteúdo do Jlist
    public void setCargos(List<Cargo> cargos) {
        this.cargos = cargos;
        fireContentsChanged(this, 0, cargos.size() - 1);
    }

    // o Jlist vai chamar esse método pra saber quantos itens é pra renderizar
    @Override
    public int getSize() {
        return cargos == null ? 0 : cargos.size();
    }

    // o Jlist vai chamar esse método pra apresentar os itens em cada linha
    @Override
    public String getElementAt(int linha) {
        if (cargos == null || cargos.isEmpty()) {
            return null;
        }
        Cargo cargo = cargos.get(linha);
        return cargo.getNome(); // aqui você retorna o valor a ser exibido no seu JList
    }
}

Agora vamos ajustar a implementação da sua tela CargosConsultar:

package sistema.telas;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import sistema.BancoDeDados;
import sistema.entidades.Cargo;

//Criaremos a classe CargosConsultar a partir da linha 25, Conforme a indicação no codigo.

public class CargosConsultar extends JPanel {

    private Cargo cargoAtual;
    private JLabel labelTitulo, labelCargo;
    private JTextField campoCargo;
    private JButton botaoPesquisar, botaoEditar, botaoExcluir;
    private JList<String> listaCargos; // o JList vai renderizar Strings (os nomes dos cargos)
    private CargoListModel listasCargosModelo = new CargoListModel(); // o ListModel agora vai ser um CargoListModel
    private List<Cargo> cargos= new ArrayList<>(); // o objetos Cargo vão ser armazenados em uma lista

    public CargosConsultar() {
        criarComponentes();
        criarEventos();
    }

    private void criarComponentes() {
        setLayout(null); // Definimos que não será usado nenhum gerenciador de layout.

        // Nas linhas 43 a 55, instanciamos os componentes da tela.
        labelTitulo = new JLabel("Consulta de Cargos", JLabel.CENTER);
        labelTitulo.setFont(new Font(labelTitulo.getFont().getName(), Font.PLAIN, 20));
        labelCargo = new JLabel("Nome do cargo", JLabel.LEFT);
        campoCargo = new JTextField();
        botaoPesquisar = new JButton("Pesquisar Cargo");
        botaoEditar = new JButton("Editar Cargo");
        botaoEditar.setEnabled(false);
        botaoExcluir = new JButton("Excluir Cargo");
        botaoExcluir.setEnabled(false);
        listaCargos = new JList<>();
        listaCargos.setModel(listasCargosModelo);
        listaCargos.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);

        // Nas linhas 58 a 64, definimos o posicionamento e o tamanho dos componentes na tela.
        labelTitulo.setBounds(20, 20, 660, 40);
        labelCargo.setBounds(150, 120, 400, 20);
        campoCargo.setBounds(150, 140, 400, 40);
        botaoPesquisar.setBounds(560, 140, 130, 40);
        listaCargos.setBounds(150, 200, 400, 240);
        botaoEditar.setBounds(560, 360, 130, 40);
        botaoExcluir.setBounds(560, 400, 130, 40);

        // Nas linhas 67 a 72 adicionamos os componentes a tela.
        add(labelTitulo);
        add(labelCargo);
        add(campoCargo);
        add(listaCargos);
        add(botaoPesquisar);
        add(botaoEditar);
        add(botaoExcluir);

        // Tornando a tela visível.
        setVisible(true);

    }

    private void criarEventos() {
        botaoPesquisar.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                sqlPesquisarCargos(campoCargo.getText());
            }
        });
        botaoEditar.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {}
        });
        /*
         * Nas linha 95 a 100 , definimos que, ao ser acionado, o botão Excluir Cargo irá chamar o método sqlDeletarCargo.
         */
        botaoExcluir.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                sqlDeletarCargo();
            }
        });
        /*
         * Nas 103 a 116, definimos que, ao se selecionar algum cargo na lista, este será armazenado na variável cargoAtual, e os botões Editar Cargo e Excluir Cargo serão habilitados.
         */
        listaCargos.addListSelectionListener(new ListSelectionListener() {
            @Override
            public void valueChanged(ListSelectionEvent e) {
                int linha = listaCargos.getSelectedIndex();
                cargoAtual = cargos.get(linha);
                if (cargoAtual == null) {
                    botaoEditar.setEnabled(false);
                    botaoExcluir.setEnabled(false);
                } else {
                    botaoEditar.setEnabled(true);
                    botaoExcluir.setEnabled(true);
                }
            }
        });
    }

    /*
     * Nas linhas 118 a 147, realizamos a conexão com o banco de dados para obtermos, por meio dele, todos os cargos cadastrados e adicioná-los à lista de seleção.
     */
    private void sqlPesquisarCargos(String nome) {
        // Conexão
        Connection conexao;
        // Instrução SQL
        Statement instrucaoSQL;
        // Resultados
        ResultSet resultados;

        try {
            // Conectando ao banco de dados
            conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);

            // Criando A intrução SQL
            instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
            resultados = instrucaoSQL.executeQuery("SELECT * FROM cargos WHERE nome like '%" + nome + "%'");
            cargos.clear();
            while (resultados.next()) {
                Cargo cargo = new Cargo();
                cargo.setId(resultados.getInt("id"));
                cargo.setNome(resultados.getString("nome"));
                cargos.add(cargo);
            }
            listasCargosModelo.setCargos(cargos);

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "Ocorreu um erro ao consultas os Cargos.");
            Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    /*
     * Ao ser acionado o botão Excluir Cargo irá executar o método sqlDeletarCargo. na sintaxe das linhas 149 a 171, podemos ver que esse método irá irá se conectar com o banco de dados e executar a instrução SQL que irá remover o cargo
     * selecionado.
     */
    private void sqlDeletarCargo() {

        int confirmacao = JOptionPane.showConfirmDialog(null, "Deseja realmente excluir o Cargo " + cargoAtual.getNome() + "?", "Excluir", JOptionPane.YES_NO_OPTION);
        if (confirmacao == JOptionPane.YES_OPTION) {
            // Conexão
            Connection conexao;
            // Intrução SQL
            Statement instrucaoSQL;
            // Resultados
            ResultSet resultados;

            try {
                // Conectando ao banco de dados
                conexao = DriverManager.getConnection(BancoDeDados.stringDeConexao, BancoDeDados.usuario, BancoDeDados.senha);

                // Criando a instrução SQL
                instrucaoSQL = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
                instrucaoSQL.executeUpdate("DELETE cargos WHERE id=" + cargoAtual.getId() + "");

                JOptionPane.showMessageDialog(null, "Cargo deletado com sucesso!");
            } catch (SQLException ex) {
                JOptionPane.showMessageDialog(null, "Ocorreu um erro ao excluir o Cargo.");
                Logger.getLogger(CargosInserir.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}
2 curtidas

mannooooo, muiitttooooo obrigadooooo, serioo msm, está funcionando agora, obrigado Ricardo :smile::smile::v::v::+1::+1:

1 curtida