【问题标题】:Posting data result from MySQL to JTextArea将数据结果从 MySQL 发布到 JTextArea
【发布时间】:2018-05-22 11:50:16
【问题描述】:

我在 MySQL 数据库中有数据,我需要在 JTextArea 中显示它:

ps = connection.prepareStatement("SELECT `Name`, FROM `users" + "SELECT `Post`, FROM `history");

我需要在 TextArea 中显示此查询的结果。

【问题讨论】:

  • 问题或错误是什么?
  • 我不知道如何显示结果,我在想 JtextArea.setText(ps);但那是完整的BS:D
  • ps 类似于ListMap,不是吗?在这种情况下,您将需要遍历它并将每个项目添加到表中,或者只是将其字符串表示形式添加为JTextArea 中的一行。顺便说一句,为什么不使用 JavaFX?
  • 您的查询看起来不正确。每个 preparedstatement 只支持一个查询。
  • ps = connection.prepareStatement("SELECT Name FROM users") ;.... ps1=connection.prepareStatement("SELECT Post FROM history");

标签: java mysql jtextarea


【解决方案1】:

应该是这样的:

try{
    final String sql = "SELECT Name FROM users;";

    PreparedStatement ps = connection.prepareStatement(sql);
    ResultSet rs = ps.executeQuery();
    if(rs != null){
        while(rs.next()){
            String name = rs.getString(1);
            //Do something with name
        }
        rs.close();
    }
    ps.close();
}catch(Exception e){
    e.printStackTrace();
}

【讨论】:

  • 谢谢你们
【解决方案2】:

编辑:

您有一个格式错误的 SQL 查询,就像 JAMSHAID IQBAL 在 cmets 中写的那样。 这是一个经过编辑的解决方案,其中包括他的改进:

PreparedStatement psUserNames = connection.prepareStatement("SELECT Name FROM users;");
PreparedStatement psPosts = connection.prepareStatement("SELECT Post FROM history;")

1.从 PreparedStatement 中提取数据:

首先,您需要从 PreparedStatement 中获取 ResultSet。 这是您请求的所有数据的存储位置:

ResultSet rsUserNames = psUserNames.executeQuery();
ResultSet rsPosts = psPosts.executeQuery();

那么你需要从这个 ResultSet 中提取数据为Strings。例如以这样的方式(简化示例):

String username = new String();
String post = new String();
rsUserNames.next();
rsPosts.next();
username = rsUserNames.getString("Name");
post = rsPosts.getString("Post");

(使用while循环和异常处理更好地迭代ResultSet中的所有数据集。Here你可以看到一个例子)

2。将数据写入 JTextArea

然后,将数据字符串显示到 JTextArea 的一种简单方法是使用 setText()append() 方法。例如:

JTextArea jtextAreaUserName = new JTextArea();
JTextArea jtextAreaPost = new JTextArea();
jtextAreaUserName.setText(username);
jtextAreaPost.setText(post);

有用的链接:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-23
    • 2018-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多