将数据结果从MySQL发布到JTextArea

时间:2018-05-22 11:50:17

标签: java mysql jtextarea

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

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

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

2 个答案:

答案 0 :(得分: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();
}

答案 1 :(得分:1)

修改

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

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中将数据提取为String。例如,以这种方式(简化示例):

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);

有用的链接: