2016-05-17 76 views
0

我目前有一个程序,从SQL数据库抓取新闻发布,然后将它们加载到textArea中,用户可以查看它们。但目前我的程序有很大的局限性,因为它只能显示一个帖子,因为我无法抓取多个帖子。TextArea与新闻发布 - SQL插入(开始新行)

JScrollPane scrollPane_2 = new JScrollPane(); 
     scrollPane_2.setViewportBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null)); 
     scrollPane_2.setBounds(769, 125, 294, 430); 
     frame.getContentPane().add(scrollPane_2); 

     JTextArea textArea = new JTextArea(); 
     scrollPane_2.setViewportView(textArea); 
     textArea.setFont(new Font("Lantinghei TC", Font.PLAIN, 13)); 
     textArea.setEditable(false); 
     textArea.setBackground(Color.LIGHT_GRAY); 
     textArea.setLineWrap(true); 
     textArea.setWrapStyleWord(true); 

     frame.getContentPane().add(lblChangelogAndNews); 
     try { 
      Connection conn = DriverManager.getConnection(Host, Name, Pass); 
      PreparedStatement pst = conn.prepareStatement("SELECT * From `news_1`"); 
      ResultSet rs = pst.executeQuery(); 
      while(rs.next()) { 
       String content =rs.getString("content"); 
       textArea.setText(content); 
      } 
     } 
     catch (Exception e) { 
     } 

什么我遇到的麻烦是我将如何得到解决抢夺多个新闻条目,然后在布局这样

标题显示它们

内容

(在每个帖子之间有空格)

标题

内容

我此刻的所有原因的问题,所以我刚才列举从早期简单的工作其中一个显示我想要的基本尝试的方法。

如果你想进一步的信息,我想让它做,请评论,以便我可以回答额外的信息。

由于奎恩(请注意我目前新的编码,因此坏布局)

回答

0
  try { 
      String content = ""; 
      Connection conn = DriverManager.getConnection(Host, Name, Pass); 
      PreparedStatement pst = conn.prepareStatement("SELECT * From `news_1`"); 
      ResultSet rs = pst.executeQuery(); 
      while(rs.next()) { 
       content = content + rs.getString("title") + "\n"; 
       content = content + rs.getString("content") + "\n"; 
       content = content + "\n"; 
      } 
      textArea.setText(content); 
     } 
     catch (Exception e) { 
     } 

我最终决定不使用表格,而是使用我的TextArea使用\ n给我新的行,然后通过我的数据库抓取标题+内容

2

这不正是一个MySQL的问题,而是一个java摆动问题。如果你看看你的while循环,你会发现它已经结束了一遍又一遍地写同一个文本区域。

 while(rs.next()) { 
      String content =rs.getString("content"); 
      textArea.setText(content); 
     } 

你需要的是一个带有数据库链接模型的JTable。这里是一个很好的先前Q /此处的这也解释了如何做到这一点:

Most simple code to populate JTable from ResultSet

(通常我会投票接近重复的,但我觉得在这里被要求作出解释)

+1

谢谢你的链接,我没有找到这个提前到期我不是在寻找JTables,但它非常有帮助。 –

+0

在回头看这篇文章时意外点击了它。抱歉 –