Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Chuyển đổi đối tượng chứa các trường lặp lại thành JSON

Bạn có thể sử dụng Gson của Google trong trường hợp này:

public String getJSONFromResultSet(ResultSet rs, String key) {
    Map json = new HashMap();
    List list = new ArrayList();
    if (rs != null) {
        try {
            ResultSetMetaData mData = rs.getMetaData();
            while (rs.next()) {
                Map<String, Object> columns = new HashMap<String, Object>();
                for (int columnIndex = 1; columnIndex <= mData.getColumnCount(); columnIndex++) {
                    if (rs.getString(mData.getColumnName(columnIndex)) != null) {
                        columns.put(mData.getColumnLabel(columnIndex),
                                rs.getString(mData.getColumnName(columnIndex)));
                    } else {
                        columns.put(mData.getColumnLabel(columnIndex), "");
                    }
                }
                list.add(columns);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        json.put(key, list);
    }
    return new Gson().toJson(json);
}

Cập nhật: Bạn có thể gọi getJSONFromResultSet như sau:

Connection con = DBConnectionClass.myConnection();
        PreparedStatement ps = con.prepareStatement("SELECT * FROM Customer");
      //as an example consider a table named Customer in your DB.
        ResultSet rs = ps.executeQuery();
        System.out.println(getJSONFromResultSet(rs, "customer"));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lấy các giá trị từ cơ sở dữ liệu?

  2. gặp lỗi khi xác định tên sự kiện trên mysqlworkbench 5.5

  3. Kết quả nối SQL thành một đối tượng trong codeigniter

  4. QSql ::Out và QSql ::InOut có được sử dụng ngoài việc gọi một thủ tục store không?

  5. Làm cách nào để tải xuống tệp bằng PHP và Mysql DB