- #1
Suxil_7
- 1
- 0
I need help. When I press show button it does not show any table and error.
Here is the code:
Here is the code:
Java:
package Demo;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.JTable;
import javax.swing.JScrollPane;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.awt.event.ActionEvent;
@SuppressWarnings("serial")
public class Datatable extends JFrame {
private JPanel contentPane;
private JTable table;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Datatable frame = new Datatable();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Datatable() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(235, 172, -177, -125);
contentPane.add(scrollPane);
table = new JTable();
scrollPane.setViewportView(table);
JButton btnNewButton = new JButton("Show");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/mybd","root","");
Statement st = con.createStatement();
String query = "Select * from student";
ResultSet rs =st.executeQuery(query);
ResultSetMetaData rsmd=rs.getMetaData();
DefaultTableModel model =(DefaultTableModel)table.getModel();
int cols =rsmd.getColumnCount();
String [] colName = new String[cols];
for(int i =0; i<cols;i++) {
colName[ i] =rsmd.getColumnName(i+1);
model.setColumnIdentifiers(colName);
String id,name,course;
while(rs.next()) {
id= rs.getString(1);
name= rs.getString(2);
course= rs.getString(3);
String[] row = {id,name,course};
model.addRow(row);
}
// rs.close();
//st.close();
//con.close();
}
} catch (ClassNotFoundException | SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
});
btnNewButton.setBounds(326, 69, 85, 21);
contentPane.add(btnNewButton);
}
}
Last edited by a moderator: