我有Java代码,成功地将Java连接到MySQL。
我有两节课。一个使用Java创建GUI,另一个专门从MySQL获取信息。
我正在尝试找到一种将整行信息作为字符串放入MyGUI上的每个JLabel的好方法。
这是我在每个类中的代码(不包括连接到数据库):
String result =“”;
contactsList() {
//extra classes
db=new database();
result = db.getContact();
PreparedStatement pst,pst2; ResultSet rs,rs2;
pst2 = con.prepareStatement(“选择LastName,来自联系人的FirstName”);
public String getContact()
{
String result2 = "";
try {
rs2=pst2.executeQuery();
while (rs2.next())
{
result2 = rs2.getString(1);
}
return result2;
}
catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("error while validating"+e);
return "";
}
现在MySQL中的Contacts表中的行包含以逗号分隔的列
1,里维拉,安吉洛,2890件事。 ventura 93003,Null
2,人,随机,1223我不知道。 Camairllo 93001,423-123-5313
现在,当我尝试在“label1”中放置一行时,它显示的唯一文本是“Person”。
如何制作它以便在JLabel中显示整行?
另外,我如何格式化代码,以便我可以调用该函数来获取下一行信息并将其放入另一个标签中?
感谢。
答案 0 :(得分:0)
您只是要求它通过事物的外观从结果集中检索一列:
result2 = rs2.getString(1);
如果要显示更多数据,只需要检索它并以某种方式对其进行格式化:
result2 = rs2.getString(1) + " : " + rs2.getString(2);
例如。
但我认为select语句还存在其他问题。
select LastName, FirstName from contacts
将从数据库中的每一行检索LastName和FirstName。循环结构的工作方式意味着result2
将仅包含表中最后一行的数据。那是你想要实现的目标吗?
答案 1 :(得分:0)
我建议使用JTable。有关详细信息,请阅读How to use JTable上的Swing教程中的部分。
然后你可能想看看Table From Database。 Table From Database Example
代码可能是最简单的启动方式。