java读取数据库数据,并将数据存入数组返回

// 查询数据库内手机在线状态的设备信息,得到的是List>格式    // 例如[{udid=7b45c30, version=7.1.1, phonename=MiNote3}, {udid=UYT7N17B16002687, version=8.0.0, phonename=Mate10}]    public List getOnlineStatus() throws SQLException {        List onlinePhoneInfo = new ArrayList();        String sqlString = "SELECT phonename,udid,version FROM phonestatus WHERE status = 'online'";        pst = conn.prepareStatement(sqlString);        rSet = pst.executeQuery();        //getMetaData获得表结构,getColunmCount获得字段数        int num = rSet.getMetaData().getColumnCount();        while (rSet.next()) {            Map mapOfColValues = new HashMap(num);            for (int i = 1; i<= num; i++) {                //getColunmName获取字段名                mapOfColValues.put(rSet.getMetaData().getColumnName(i),rSet.getObject(i));            }            onlinePhoneInfo.add(mapOfColValues);            System.out.println(mapOfColValues);        }        System.out.println(onlinePhoneInfo);        return onlinePhoneInfo;    }// 查询数据库内手机在线状态的设备信息,得到的是List>格式
    // 例如[{udid=7b45c30, version=7.1.1, phonename=MiNote3}, {udid=UYT7N17B16002687, version=8.0.0, phonename=Mate10}]
    public List getOnlineStatus() throws SQLException {
        List onlinePhoneInfo = new ArrayList();
        String sqlString = "SELECT phonename,udid,version FROM phonestatus WHERE status = 'online'";
        pst = conn.prepareStatement(sqlString);
        rSet = pst.executeQuery();

        //getMetaData获得表结构,getColunmCount获得字段数
        int num = rSet.getMetaData().getColumnCount();

        while (rSet.next()) {
            Map mapOfColValues = new HashMap(num);
            for (int i = 1; i<= num; i++) {
                //getColunmName获取字段名
                mapOfColValues.put(rSet.getMetaData().getColumnName(i),rSet.getObject(i));
            }
            onlinePhoneInfo.add(mapOfColValues);

            System.out.println(mapOfColValues);

        }
        System.out.println(onlinePhoneInfo);
        return onlinePhoneInfo;
    }

java读取数据库数据,并将数据存入数组返回_第1张图片

数据库中查询的数据如上图,rSet.getMetaData()获取数据库结构

1、rs.getMetaData().getTableName(1))就可以返回表名 
2、rs.getMetaData().getColumnCount()字段数 

3、rs.getMetaData().getColumnName(i));字段名

上面代码,循环3个字段名,并put(字段名,对应的value),

并存入map

再把map,add到数组中

你可能感兴趣的:(java读取数据库数据,并将数据存入数组返回)