使用数组从数据库中设置表内的值

Posted

技术标签:

【中文标题】使用数组从数据库中设置表内的值【英文标题】:Set value inside table from database using array 【发布时间】:2018-09-11 09:22:27 【问题描述】:

我正在尝试从 mysql 数据库中获取数据并尝试将其显示到表中。为此,我使用凌空抽射。

JSONArray result = response.getJSONArray("result");
                for (int i = 0; i < result.length(); i++) 
                    JSONObject jsonObject = result.getJSONObject(i);

                    String name = jsonObject.getString("name");
                    String phone = jsonObject.getString("phone");
                    String email = jsonObject.getString("email");

                    String j = String.valueOf(i);

                    data = new String[][]j, name, email, phone;

                    tableView.setDataAdapter(new SimpleTableDataAdapter(getActivity(), data));
                

我的 json 数组


"result": [
    
        "sl": "36",
        "user_id": "575512",
        "email": "m@gmail.com",
        "password": "123",
        "name": "Moderator",
        "gender": "Male",
        "phone": "1223345",
        "lvl": "Moderator",
        "stat": "1"
    ,
    
        "sl": "68",
        "user_id": "814769",
        "email": "m2@gmail.com",
        "password": "1WCcvnhp",
        "name": "Test Moderator",
        "gender": "Male",
        "phone": "7412589630",
        "lvl": "Moderator",
        "stat": "1"
    
]

问题是我只从 jsonArray 获取最后一个值,因为 String 数组正在自行重置。

data = new String[][]j, name, email, phone;

我想获取 jsonArray 中所有可用的值。

我正在为表使用以下依赖项

de.codecrafters.tableview:tableview:2.8.0

【问题讨论】:

只是为了澄清 - 你想要更多来自 jsonArray 的最后一个值吗?你想从这个项目中得到什么? 是的,我想要 jsonArray 中的所有可用值。 @AJD 编辑问题,以便其他帮助者清楚您想要实现的目标。 【参考方案1】:

这样试试

JSONArray result = response.getJSONArray("result");
            for (int i = 0; i < result.length(); i++) 
                JSONObject jsonObject = result.getJSONObject(i);

                String name = jsonObject.getString("name");
                String phone = jsonObject.getString("phone");
                String email = jsonObject.getString("email");

                String j = String.valueOf(i);

                data = new String[][]j, name, email, phone;
            

                tableView.setDataAdapter(new SimpleTableDataAdapter(getActivity(), data));

获取数组中的所有值后,将该数组添加到tableview

【讨论】:

刚刚试了一下,同样的,只得到最后一个值。 在 for 循环中,它正在替换 "i" 的每个值中的值。 即使我不使用 i ,只有姓名、电子邮件、电话同样的问题。我试过了。 创建一个 bean 类并将值添加到 List 并尝试添加到 tableview 我确实尝试过使用 BeanClass 的上述方法。以前只有 last 只显示 1 次,但现在相同的 last last 值显示多次。

以上是关于使用数组从数据库中设置表内的值的主要内容,如果未能解决你的问题,请参考以下文章

您可以 SQL 填充 BigQuery 表并在同一个 API 调用中设置表列模式吗?

如何从一个工作表内的多个提取数据记录到另一个工作表中,并在数据后面加一个分隔标记。

从数组或列表中设置数据表整列的值

java基本算法

SQLServer如何将一个表内的所有数据导入另一个表后,删除表内的所有数据

如何从数组内的值中修剪数据?