我的数据库中有一个 4 行 4 列的表。每列保存不同的数据。 现在我想检索数据库中的所有数据并将它们放在另一个表单上的 JLabel 上。 IE 在我的数据库中我有。
套餐名称......月费......年费......总计费用
常规......................150.......300...... ......450
金币......................300.......400 ...................700
..................
现在我有一个表单,我在四行中放置了 4 个空 JLabel,但是如何从数据库中检索值并将每个值放入适当的标签中?
这就是我所做的,但我仍然无法解决它。我被卡住了。
谢谢大家。
public void getPrices()
{
String srt ="SELECT * FROM program_tbl";
try
{
con.connect();
ps = con.con.prepareStatement(srt);
rs = ps.executeQuery();
ResultSetMetaData data = rs.getMetaData();
int colums = data.getColumnCount();
while(rs.next())
{
Vector rows = new Vector();
for (int i = 1; i < colums; i++)
{
rows.addElement(rs.getObject(i));
}
...................................................... ......................
最佳答案
如果您想以字符串形式获取此数据,那么您可以尝试以下操作:
Vector<String> rows = new Vector<String>();
while(rs.next()) {
String rowEntry = rs.getString("packageName") +
rs.getString("monthlyFee") +
rs.getString("yearlyFee") +
rs.getString("totalFee") +
rows.add(rowEntry);
}
如果不是String,而是稍后要使用的对象,那么您可以创建一个类:
public class MyObject {
private String packageName;
private int monthlyFee;
private int yearlyFee;
private int totalFee;
public MyObject (String name, int monthlyFee, int yearlyFee, int totalFee) {
this.packageName = name;
this.monthlyFee = monthlyFee;
this.yearlyFee = yearlyFee;
this.totalFee = totalFee;
}
/*Setters
*And
*Getters*/
}
然后将其用作:
Vector<MyObject> rows = new Vector<MyObject>();
while (rs.next()) {
MyObject obj = new MyObject(rs.getString("packageName")
, rs.getInt("montlyFee")
, rs.getInt("yearlyFee")
, rs.getInt("totalFee")
);
rows.add(obj)
}
假设我们现在有一个带有字符串值的 vector - Vector<String> rows;
现在我想创建那些 JLabels。
JLabel[] myLabels = new JLabel[v.size()];
for(int i=0; i<rows.size(); i++) {
as[i] = new JLabel(rows.get(i));
}
现在我们有一个 JLabels 数组准备好放入小程序中。
关于java - 从数据库获取值到 JLabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19722829/