java - 如何将每个数据库表行传递给Java mysql中的相关jLabels
问题描述
我正在创建一个简单的评级系统。我只有 3 个问题数据库表。我在下面附上了屏幕截图。
这些问题是 b c 我需要的是我在 JFrame 中放置了 3 个 jLabels 我需要从数据库表中获取并传递给相关的 Jlables 我附上了下面的屏幕截图。
但只显示结果 c 只表示只显示最后一行数据。我需要显示问题 1 - a、问题 2 - b、问题 3 - c。到目前为止,我在下面附上了我尝试过的方法。
public void question()
{
String query = "select * from rate";
Statement stat =null;
ResultSet rs;
try {
stat = con.createStatement();
rs = stat.executeQuery(query);
while(rs.next())
{
lblq1.setText(rs.getString(2));
lblq2.setText(rs.getString(2));
lblq3.setText(rs.getString(2));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
解决方案
尝试改变这个:
while(rs.next())
{
lblq1.setText(rs.getString(2));
lblq2.setText(rs.getString(2));
lblq3.setText(rs.getString(2));
}
变成这样的东西:
int id = 1;
while(rs.next())
{
if ( id == 1 ) lblq1.setText(rs.getString(2));
if ( id == 2 ) lblq2.setText(rs.getString(2));
if ( id == 3 ) lblq3.setText(rs.getString(2));
id += 1;
}
在您当前的代码中,您为每个值设置了所有三种感觉的文本,最终所有这些感觉都包含最后一个值。您需要检查要在哪个字段中设置哪个值。有更好(更有效)的方法来编写此代码(switch / if else if),但例如,这应该足够了。
推荐阅读
- python - 将等高线图保存为数组
- cmake - cmake mingw build 找不到 openmp (FindOpenMP)
- go - 如何在没有查询参数的情况下获取 url?
- javascript - 获取一个 localStorage 项目值并将其设置为变量
- c# - NUnit 测试错误:无法从程序集“System.Web,版本=4.0.0.0”加载类型“System.Web.HttpApplication”
- android - Android WebView 问题,将文本隐藏在键盘后面
- google-chrome-extension - 具有大量持久 RAM 使用的 Chrome 扩展 MV3,这可能吗?
- xml - 如何解密使用 aes128-gcm 加密的 xml EncryptedData 元素(saml2 响应)
- javascript - 在对象数据集上使用 forEach
- r - 如何在 R 中正确设置山体阴影