ResultSet与JSON之间的转化

本文介绍如何使用Java操作JSON,包括将ResultSet转换为JSONObject或JSONArray的方法,并展示了如何将JSON对象映射到JavaBean实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.操作JSON的JAR包如下:

2.ResultSet--->JSONObject

  1. /** 
  2.  
  3.      * 将resultSet转化为JSONObject 
  4.  
  5.      * @param rs 
  6.  
  7.      * @return 
  8.  
  9.      * @throws SQLException 
  10.  
  11.      * @throws JSONException 
  12.  
  13.      */  
  14.   
  15.     public static JSONObject resultSetToJsonObject(ResultSet rs) throws SQLException,JSONException   
  16.   
  17.     {   
  18.   
  19.        // json对象  
  20.   
  21.         JSONObject jsonObj = new JSONObject();       
  22.   
  23.        // 获取列数   
  24.   
  25.        ResultSetMetaData metaData = rs.getMetaData();   
  26.   
  27.        int columnCount = metaData.getColumnCount();   
  28.   
  29.        // 遍历ResultSet中的每条数据   
  30.   
  31.         if (rs.next()) {   
  32.   
  33.             // 遍历每一列   
  34.   
  35.             for (int i = 1; i <= columnCount; i++) {   
  36.   
  37.                 String columnName =metaData.getColumnLabel(i);   
  38.   
  39.                 String value = rs.getString(columnName);   
  40.   
  41.                 jsonObj.put(columnName, value);   
  42.   
  43.             }     
  44.   
  45.         }  
  46.   
  47.        return jsonObj;   
  48.   
  49.     }  
  50.   
  51. }  

3.ResultSet--->JSONArray

  1. /** 
  2.  
  3.    * 将resultSet转化为JSON数组 
  4.  
  5.    * @param rs 
  6.  
  7.    * @return 
  8.  
  9.    * @throws SQLException 
  10.  
  11.    * @throws JSONException 
  12.  
  13.    */  
  14.   
  15.   public static JSONArray resultSetToJsonArry(ResultSet rs) throws SQLException,JSONException   
  16.   
  17.   {   
  18.   
  19.      // json数组   
  20.   
  21.      JSONArray array = new JSONArray();   
  22.   
  23.          
  24.   
  25.      // 获取列数   
  26.   
  27.      ResultSetMetaData metaData = rs.getMetaData();   
  28.   
  29.      int columnCount = metaData.getColumnCount();   
  30.   
  31.          
  32.   
  33.      // 遍历ResultSet中的每条数据   
  34.   
  35.       while (rs.next()) {   
  36.   
  37.           JSONObject jsonObj = new JSONObject();   
  38.   
  39.               
  40.   
  41.           // 遍历每一列   
  42.   
  43.           for (int i = 1; i <= columnCount; i++) {   
  44.   
  45.               String columnName =metaData.getColumnLabel(i);   
  46.   
  47.               String value = rs.getString(columnName);   
  48.   
  49.               jsonObj.put(columnName, value);   
  50.   
  51.           }    
  52.   
  53.           array.put(jsonObj);    
  54.   
  55.       }   
  56.   
  57.          
  58.   
  59.      return array;   
  60.   
  61.   }  

4.JSONObject--->JAVABean

  1. User user=JSONObject.toBean(jsonObj,User.class);  

5.JSON字符串--->JSONObject

  1. JSONObject jsonObj=JSONObject.fromObject(jsonStr);  

6.JAVABean--->JSONObject

  1. JSONObject jsonObj=JSONObject.fromObject(javabean);  

7.强大JSON工具网址

http://www.bejson.com/json2javapojo/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值