массив json от sqlite до сервера

Я должен создать arrray json из базы данных sqlite и отправить этот массив json как JSON fromat на сервер
Мой код для преобразования sqlite в json…

  public JSONArray getResults()
{

    String myPath = "/data/data/com.example.sebastian.patientdetails/databases/MyDBName.db";// Set path to your database

    String myTable = TABLE_NAME;//Set name of your table



    SQLiteDatabase myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);

    String searchQuery = "SELECT  * FROM " + myTable;
    Cursor cursor = myDataBase.rawQuery(searchQuery, null );

    JSONArray resultSet     = new JSONArray();

    cursor.moveToFirst();
    while (!cursor.isAfterLast()) {

        int totalColumn = cursor.getColumnCount();
        JSONObject rowObject = new JSONObject();

        for( int i=0 ;  i< totalColumn ; i++ )
        {
            if( cursor.getColumnName(i) != null )
            {
                try
                {
                    if( cursor.getString(i) != null )
                    {
                        Log.d("Data", cursor.getString(i) );
                        rowObject.put(cursor.getColumnName(i) ,  cursor.getString(i) );
                    }
                    else
                    {
                        rowObject.put( cursor.getColumnName(i) ,  "" );
                    }
                }
                catch( Exception e )
                {
                    Log.d("Data", e.getMessage()  );
                }
            }
        }
        resultSet.put(rowObject);
        cursor.moveToNext();
    }
    cursor.close();
   Log.d("Data", resultSet.toString() );

    return resultSet;

}

Как я могу отправить этот массив json на сервер, чтобы ударить как формат json на стороне сервера?
Как я могу это сделать. Пожалуйста, помогите мне…

2 ответа

  1. Вы можете использовать метод jsonarray request with POST с помощью библиотеки Google Volley

  2. Вы также можете использовать OkHttp для отправки данных post на сервер.
    Добавьте compile 'com.squareup.okhttp3:okhttp:3.4.1'в свой build.gradlein dependencies. И используйте под кодом

    public static final MediaType JSON
        = MediaType.parse("application/json; charset=utf-8");
    
    OkHttpClient client = new OkHttpClient();
    
    String post(String url, String json) throws IOException {
      RequestBody body = RequestBody.create(JSON, json);
      Request request = new Request.Builder()
          .url(url)
          .post(body)
          .build();
      Response response = client.newCall(request).execute();
      return response.body().string();
    }
    

    Полный код здесь

    Вызовите postметод с URL и вашим JSON для отправки на сервер.