java - java jtable中用户登录后如何显示mysql数据库中的特定用户数据;
问题描述
我正在尝试开发一个Java桌面应用程序来处理两种类型的用户:管理员和教师,当用户登录时他甚至可以添加教师或课程,当教师登录系统时应该显示管理员的相关课程为这位老师输入了他们。所以假设我们有一位老师,但他有 3 门课程及其相关详细信息我面临的问题是,当我登录教师信息并且我需要在 jtable 中填充此详细信息时,他们没有什么可显示的,所以在我登录后通过用户名和密码,我需要从 Jtextfield 中获取用户名并将其放在 select 语句的 where 子句中,Jtable 中没有显示任何内容,请尽快帮助我
form login: private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO 在此处添加您的处理代码:try { // 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);
}
}
解决方案
推荐阅读
- amazon-web-services - 如何通过 http get 发送多部分键值
- python - 如何从变量中随机绘制对象?
- sql - 提取没有标准开始、结束位置的字符串
- discord - Discrd.py python 3.6 用户请求加入离开频道
- mysql - Mysql中的四舍五入值
- j - 是否在 J 中实现了三次样条插值方法?
- eclipse - 链接 GTK3 库时 Debian 10、Eclipse、C 出现问题
- html - HTML 表格单元格位于另外两个单元格之上
- hdfs - HBase oldWALs, pv2-(sequence number).log 未清理
- rpm - 构建自定义 RPM 文件