Preciso mostrar uma tabela do MySQL através de um botão em Java Eclipse, alguém sabe como faz ?

Está dando erro nos gets do while

JButton btnNewButton = new JButton(“Verificar”);
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {

			DefaultTableModel modelo = new DefaultTableModel(null, new String[] {"ID", "Código", "Endereço", "Status", "Data/Hora"});
			JTable tabela = new JTable(modelo);
			
			Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sistemarfid?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&useTimezone=true&serverTimezone=UTC", "root", "12345");
			
			Statement statement=con.createStatement();
			Resultset rs= (Resultset) statement.executeQuery("Select id, codigo_int, endereco_estoque, estatus, data_estoque from estoque");
			((ResultSet) rs).next();
			
			
			while(((ResultSet) rs).next()) {
			    String[] dados = new String[4];
			    dados[0] = rs.get("id");
			    dados[1] = rs.getString("codigo_int");
			    dados[2] = rs.getString("endereco_estoque");
			    dados[3] = rs.getString("estatus");
			    dados[4] = rs.getString("data_estoque");
			    modelo.addRow(dados);
			}
			
    		
 
			
		}
	});

Não tinha q ser

 tabela.addRow(dados);

Mudei para tabela e deu erro

1º A classe ResultSet não possui um método chamado simplesmente get.
2º Você tem um array de 4 posições e quer atribuir valores em 5 posições.

Dica: Não utilize array de String para armazenar seus valores, crie objetos que realmente representem o que você precisa.

1 curtida

Obrigado pela dica! Mas não sou experiente em Java, você tem algum exemplo disto?

Cria uma classe Estoque com os atributos codigo, endereco, status e data;

1 curtida

Ok, Obrigado!

Você pode usar a apostila de POO da caelum, é gratuita e muito boa. Lá você vai encontrar uma parte relacionada com o banco de dados e como recuperar os dados.

Obrigado pela dica!