用户登录java jtable后如何显示mysql数据库中的具体用户数据;
我正在尝试开发一个java桌面应用程序,它处理两种类型的用户:管理员和教师 当用户登录时,他甚至可以添加教师或课程,当教师登录系统时,系统应显示管理员为该教师输入的相关课程。 假设我们有一位老师,但他有三门课程,都有相关的细节 我面临的问题是,当我登录教师信息并需要在jtable中填充此详细信息时,它们没有显示任何内容,因此在我使用用户名和密码登录后,我需要从Jtextfield中获取用户名,并将其放在select语句的where子句中,jtable中没有显示任何内容 请尽快帮助我 表格登入: 私有void jButton2ActionPerformed(java.awt.event.ActionEvent evt){用户登录java jtable后如何显示mysql数据库中的具体用户数据;,java,mysql,swing,Java,Mysql,Swing,我正在尝试开发一个java桌面应用程序,它处理两种类型的用户:管理员和教师 当用户登录时,他甚至可以添加教师或课程,当教师登录系统时,系统应显示管理员为该教师输入的相关课程。 假设我们有一位老师,但他有三门课程,都有相关的细节 我面临的问题是,当我登录教师信息并需要在jtable中填充此详细信息时,它们没有显示任何内容,因此在我使用用户名和密码登录后,我需要从Jtextfield中获取用户名,并将其放在select语句的where子句中,jtable中没有显示任何内容 请尽快帮助我 表格登入:
//TODO在此处添加您的处理代码: 试一试{ //TODO在此处添加您的处理代码:
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:8889/test","root","root");
String sql="select * from user where username= '"+txtuser.getText()+"' and password='"+txtpass.getText()+"'";
PreparedStatement smt=con.prepareStatement(sql);
ResultSet rs=smt.executeQuery();
} catch (ClassNotFoundException | SQLException ex) {
Logger.getLogger(test1.class.getName()).log(Level.SEVERE, null, ex);
}
}
表格意见:
public capnel() {
initComponents();
updateTable();
}
public void setUser(String user) {this.lbluser.setText(user);
}
public String getUser() {return this.lbluser.getText();}
public void updateTable() {
try {
// TODO add your handling code here:
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:8889/examdb", "root", "");
String query = "select user.username, comments.comments from user,comments where user.username='"+lbluser+"'";
PreparedStatement ps = connection.prepareStatement(query);
ResultSet rs = ps.executeQuery();
tbl1.setModel(DbUtils.resultSetToTableModel(rs));
} catch (ClassNotFoundException | SQLException ex) {
JOptionPane.showMessageDialog(null, ex);
}
}
从@MadProgrammer开始,非常感谢,我想你只需要说我需要从准备好的语句中设置字符串,或者说我离它很远,我也希望如果你用所有的方式简化答案是和否,你还需要更改查询以支持它-
PreparedStatement
s只是查询数据库的首选机制现在几天了,所以你最好习惯使用它们。好的,兄弟,非常感谢你的支持,我会的