2 mocuishle2 MoCuishle2 于 2016.04.28 19:48 提问

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();
        }
      }
}
应该怎么做,求大神指导一下 谢谢大家

3个回答

liuyihuansmm
liuyihuansmm   2016.04.28 20: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(),我简直就是话痨啊....

CSDNXIAOD
CSDNXIAOD   2016.04.28 19:52

JAVA控制台输出格式
java 输出控制台录入
cprintf 可以在控制台无刷新实时输出数据
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

fk002008
fk002008   2016.04.29 10:38

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

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

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

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

如有帮助还请采纳

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!