MoCuishle/
2016-04-28 11:48
采纳率: 50%
浏览 6.6k
已采纳

java如何将输出在控制台的数据输出在textarea中

编写了一个用户界面程序 图片说明想实现点击查询按钮能够在textarea中显示数据库中内容的功能,关于数据库输出已经编写完成,代码如下

```public class mysql {
public void input(String databasename,String username,String password) {
try {
Class.forName("com.mysql.jdbc.Driver"); //加载MYSQL JDBC驱动程序

//Class.forName("org.gjt.mm.mysql.Driver");
System.out.println("Success loading Mysql Driver!");
}
catch (Exception e) {
System.out.print("Error loading Mysql Driver!");
e.printStackTrace();
}
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/"+databasename,username,password);
//连接URL为 jdbc:mysql//服务器地址/数据库名 ,后面的2个参数分别是登陆用户名和密码

          System.out.println("Success connect Mysql server!");
          Statement stmt = connect.createStatement();
          ResultSet rs = stmt.executeQuery("select * from city");
                                                                  //user 为你表的名称
    while (rs.next()) {
            System.out.println(rs.getString("name"));
          }
        }
        catch (Exception e) {
          System.out.print("get data error!");
          e.printStackTrace();
        }
      }
}
应该怎么做,求大神指导一下 谢谢大家
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 一只程序渣 2016-04-28 12:37
    已采纳

    嘻嘻,针对你的代码来看吧:你select * from city 对吧,你可以把city弄成个javabean啊,然后city类中实现toString 方法。这样你就可以把rs.getXXX都
    放在一个个city类的实例中去,再把这些实例放到集合里去吧(if you may)。最后不就是遍历集合中每个元素,调用toString(),并且追加到一个StringBuffer 的对象里去(不如就把变量名定为buffer吧),**finally{textarea.setText(buffer.toString())}** 。
    代码的话,我想你可以这样

            ResultSet rs = stmt.executeQuery("select * from city");
            List<City> citys = new ArrayList<City>();
             while (rs.next()) {
                            City city = new city;
                            city.setName(rs.getString("name"));
                            citys.add(city)
                }
    
                StringBuffer sb = new StringBuffer();
                for(City temp: citys){
                    sb.append(temp.toString());
                }
    
    
                //关键的来了
                textarea.setText(sb.toString());
    
    

    别问我City类怎么写,不然跳楼了啊...

         Class cit{
            private String name;
    
            public setName(){...};
    
            public getName(){...};
    
            public String toString(){
                    return "name:"+this.name+"\n";
            }
         }
    

    其实重点就一个,textarea.setText(),我简直就是话痨啊....

    点赞 4 评论
  • lambda-fk 2016-04-29 02:38

    你要这样想,
    控制台也是一个控件,输出控制台和输出到文件,或者网络或者控件没有什么本质区别的。

    既然这样那么他们都是对象吧,都会有一个设置他们内容的方法吧

    比如这个textarea就有一个setText方法可以设置他的内容。

    如果不知道最好先查查java的api这样你会了解很多的哦

    如有帮助还请采纳

    点赞 评论

相关推荐 更多相似问题