问题描述
有人可以帮助使用JTable
从数据库中检索数据并将其放入JButton
吗?
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.sql.*;
import java.util.Vector;
import javax.swing.table.DefaultTableModel;
public class try1 extends JFrame implements ActionListener {
JLabel Lsearch;
static JTable table;
String column[]={"ID","NAME"};
JTextField Tsearch;
//String driverName;
JButton Bsearch;
//String url;
DefaultTableModel model = new DefaultTableModel();
//String userName;String password;
String id= "";
String name= "";
String textvalue;
String sql;
public try1() {
Lsearch = new JLabel(" ID:");
Tsearch = new JTextField(15);
Bsearch = new JButton("SEARCH");
//String driverName = "com.MysqL.jdbc.Driver";
//String url = "jdbc:MysqL://localhost:3306/example";
//String userName = "root";String password = "root";
String id= "";
String name= "";
model.setColumnIdentifiers(column);
table = new JTable();
table.setModel(model);
table.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
table.setFillsViewportHeight(true);
JScrollPane scroll = new JScrollPane(table);
scroll.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
textvalue = Tsearch.getText();
add(scroll);add(Lsearch);add(Tsearch);add(Bsearch);
Lsearch.setBounds(0,100,30);
Tsearch.setBounds(30,3,20);
Bsearch.setBounds(150,20);
Bsearch.addActionListener(this);
scroll.setBounds(0,350,50);
getContentPane().setLayout(null);
setSize(500,300);
setVisible(true);
}
public static void main(String[] args) {
new try1();
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == Bsearch) {
try {
Class.forName("com.MysqL.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:MysqL://localhost:3306/example","root","");
sql = "select * from edata where ID = " + textvalue;
PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
id = rs.getString("ID");
name = rs.getString("NAME");
model.addRow(new Object[]{id,name});
}
JOptionPane.showMessageDialog(null,"Data Successfully Update","Confirmation",JOptionPane.informatION_MESSAGE);
} catch(Exception ei) {
System.out.println("");
}
}
}
}
屏幕截图:
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)