相关疑难解决方法(0)

最有效的ResultSet转换为JSON?

以下代码ResultSet使用JSONArray和将a转换为JSON字符串JSONObject.

import org.json.JSONArray;
import org.json.JSONObject;
import org.json.JSONException;

import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;

public class ResultSetConverter {
  public static JSONArray convert( ResultSet rs )
    throws SQLException, JSONException
  {
    JSONArray json = new JSONArray();
    ResultSetMetaData rsmd = rs.getMetaData();

    while(rs.next()) {
      int numColumns = rsmd.getColumnCount();
      JSONObject obj = new JSONObject();

      for (int i=1; i<numColumns+1; i++) {
        String column_name = rsmd.getColumnName(i);

        if(rsmd.getColumnType(i)==java.sql.Types.ARRAY){
         obj.put(column_name, rs.getArray(column_name));
        }
        else if(rsmd.getColumnType(i)==java.sql.Types.BIGINT){
         obj.put(column_name, rs.getInt(column_name));
        }
        else if(rsmd.getColumnType(i)==java.sql.Types.BOOLEAN){
         obj.put(column_name, rs.getBoolean(column_name));
        }
        else if(rsmd.getColumnType(i)==java.sql.Types.BLOB){ …
Run Code Online (Sandbox Code Playgroud)

java sql json resultset

106
推荐指数
6
解决办法
14万
查看次数

如何使用jdbc中的ResultSet.getBinaryStream()从所有列获取值?

如何使用jdbc将整个表写入平面文件(文本文件)?到目前为止,我尝试了以下内容:

Statement statement = connection.createStatement();
   ResultSet result = statement.executeQuery("SELECT * FROM tablename");
   BufferedInputStream buffer;
   FileOutputStream out = new FileOutputStream("flatfile.txt");
   while(result.next() )
   {
      buffer =  new BufferedInputStream(result.getBinaryStream("????") );
      byte[] buf = new byte[4 * 1024]; //4K buffer
      int len;
      while( (len = buffer.read(buf, 0, buf.length) ) != -1 )
      {
          out.write(buf, 0, len );
      }
   }
   out.close();
Run Code Online (Sandbox Code Playgroud)

"????" 只是我的占位符.我被困在作为论点传递的内容上.

java sql db2 jdbc resultset

22
推荐指数
3
解决办法
5万
查看次数

标签 统计

java ×2

resultset ×2

sql ×2

db2 ×1

jdbc ×1

json ×1