【问题标题】:Input Hashmap<Object, Object> Into JSONObject将 Hashmap<Object, Object> 输入到 JSONObject
【发布时间】:2017-09-09 05:29:16
【问题描述】:

我有一个存储数据库数据的 HashMap。如何将 HashMap 输入 JSONObject?

HashMap<AppDataRequest, AppData> appdatas = new HashMap<AppDataRequest, AppData>();

public AppDataService(){
    Connection conn = null;
    Statement stat = null;
    try{
        Class.forName("com.mysql.jdbc.Driver");
        conn = DriverManager.getConnection(DB_URL, USER, PASS);
        stat = conn.createStatement();
        String sql = "SELECT * FROM testdata";
        ResultSet resu = stat.executeQuery(sql);
        while(resu.next()){
            int id = resu.getInt("app_id");
            String email = resu.getString("email");
            String password = resu.getString("password");
            String token = resu.getString("token");
            appdatas.put(new AppDataRequest(id, email, password), new AppData(" ", "success", token));
        }
        resu.close();
        stat.close();
        conn.close();
    }

如何将 HashMap appdatas 放入 JSONObject?我尝试将 HashMap 放入 JSONObject,因为我希望实现如下输出。

{
"AppData": {
    "status": "success",
    "message": ""
    "token": "****"
  }
}

提前感谢您的任何回复。

【问题讨论】:

  • 您希望 JSON 对象采用什么结构?
  • @TimBiegeleisen 你好。你说的结构是什么意思?我可以向您展示我的 JSON 输出的“理想”输出吗?看起来像这样"AppData": {"message": " ", "status": "success", "token": "****"}

标签: java mysql json


【解决方案1】:

使用 GSON 下载以下 Google 的 API Gson

String json=new Gson().toJson(appdatas);

【讨论】:

  • 嗨@BasilBattikhi 我尝试了你的代码,它显示错误。 GSON 应该是 Gson 吗?
  • 检查我更新的答案也不要忘记导入 Gson lib
  • 嗨@BasilBattikhi 你能检查我更新的问题吗? JSON 对象能做到这一点吗?
  • 是的,但请确保您没有使用简单的 json jar
猜你喜欢
  • 2013-06-30
  • 1970-01-01
  • 2014-07-20
  • 2018-07-16
  • 2015-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-18
相关资源
最近更新 更多