導航:首頁 > 文件教程 > android更新伺服器端的json文件

android更新伺服器端的json文件

發布時間:2024-12-19 00:29:40

A. android用volley怎麼給伺服器發送json

1.下載官網的android SDK(本人用的是eclipse)

2.新建一個項目:

File->new->andriod Application project

7、下面就是具體的使用post和get請求的代碼

A:發送get請求如下:

package com.example.xiaoyuantong;

import java.util.HashMap;

import java.util.Iterator;

import org.json.JSONException;

import org.json.JSONObject;

import android.app.Activity;

import android.os.Bundle;

import android.util.Log;

import android.widget.TextView;

import com.android.volley.Request;

import com.android.volley.RequestQueue;

import com.android.volley.Response;

import com.android.volley.VolleyError;

import com.android.volley.toolbox.JsonObjectRequest;

import com.android.volley.toolbox.Volley;

/**

* Demo

*/

public class MainActivity extends Activity {

private RequestQueue requestQueue ;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

init();

}

private void init() {

TextView textView = (TextView)findViewById(R.id.textView);

requestQueue = Volley.newRequestQueue(this);

getJson();

textView.setText("hello");

}

private void getJson(){

String url = "http://192.168.20.1:8080/xiaoyuantong/userAction!register.action?pwd='測試'";

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(

Request.Method.GET, url, null,

new Response.Listener<JSONObject>() {

@Override

public void onResponse(JSONObject response) {

//這里可以列印出接受到返回的json

Log.e("bbb", response.toString());

}

}, new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError arg0) {

// System.out.println("sorry,Error");

Log.e("aaa", arg0.toString());

}

});

requestQueue.add(jsonObjectRequest);

}

}

B:發送post請求如下:

package com.example.xiaoyuantong;

import java.util.HashMap;

import java.util.Map;

import org.json.JSONException;

import org.json.JSONObject;

import com.android.volley.Request;

import com.android.volley.RequestQueue;

import com.android.volley.Response;

import com.android.volley.VolleyError;

import com.android.volley.toolbox.JsonObjectRequest;

import com.android.volley.toolbox.Volley;

import android.os.Bundle;

import android.app.Activity;

import android.util.Log;

import android.view.Menu;

import android.widget.TextView;

public class PostActivity extends Activity {

private RequestQueue requestQueue ;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_post);

init();

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.post, menu);

return true;

}

private void init() {

TextView textView = (TextView)findViewById(R.id.postView);

requestQueue = Volley.newRequestQueue(this);

getJson();

textView.setText("hellopost");

}

private void getJson(){

String url = "http://192.168.20.1:8080/xiaoyuantong/userAction!reg.action";

JsonObjectRequest jsonObjectRequest ;

JSONObject jsonObject=new JSONObject() ;

try {

jsonObject.put("name", "張三");

jsonObject.put("sex", "女");

} catch (JSONException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

//列印前台向後台要提交的post數據

Log.e("post",jsonObject.toString());

//發送post請求

try{

jsonObjectRequest = new JsonObjectRequest(

Request.Method.POST, url, jsonObject,

new Response.Listener<JSONObject>() {

@Override

public void onResponse(JSONObject response) {

//列印請求後獲取的json數據

Log.e("bbb", response.toString());

}

}, new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError arg0) {

// System.out.println("sorry,Error");

Log.e("aaa", arg0.toString());

}

});

requestQueue.add(jsonObjectRequest);

} catch (Exception e) {

e.printStackTrace();

System.out.println(e + "");

}

requestQueue.start();

}

}

8、在android的logcat裡面能查看到列印的請求

(紅色的顯示的是我在後台請求到數據)

有時候logcat顯示不出數據,可能是消息被過濾了,可以在左邊點擊「減號」刪除過濾

在server端,也就是在myeclipse的建立的另一個後台工程裡面能獲取到請求:


9、後續會補充json數據的解析部分,以及過度到移動雲的部分,上面只是c/s模式下的一個簡單的基於http的請求應答例子。

B. 伺服器端怎麼接收Android客戶端傳過來的Json數據

android如果是通過http post發送數據的話,可以採用以下方式接收數據:

  1. 通過request.getParameter(paraName); 獲取參數。

  2. request對象就是表示請求對象,getParameter就是獲取參數,傳遞的參數就是參數名。

  3. 例如請求 localhost:8080/web?data=abcd 則伺服器取值,request.getParameter("data"); 。

C. android 開發中怎樣從手機客戶端操作 從伺服器資料庫中獲取信息 以及更新資料庫數據

用xml或json,把數據傳到伺服器哪邊去,然後伺服器再把數據存到資料庫。

D. android如何獲取伺服器端文件列表及相關信息

要弄的話你先要搞清幾個問題,
1、你與服務端的通信協議。如果一般服務端已經開發好了,那麼會有一套通信協議,通常與手機的交互都採用JSON格式發送,減少流量。你可以網路下JSON的相關知識。很簡單的一種格式。如果不是JSON的話一般會是XML,不過很少見。
2、數據量。Android market應用列表見過吧?很多情況下回做成懶載入,而不是刷新所有數據。這樣的話你就要根據數據量考慮你的代碼實現了,合理的使用SoftReference,優化ListView,用sqllite資料庫緩存數據等等,具體機制你需要自己設計一下了,如果你是個PM的話。如果不是PM推薦你找個有經驗的人設計下,否則很容易出現OOM異常

對於數據的處理方面,就像第一條說的,無論是JSON還是XML格式,android都有工具類,用法我就不貼了,自己搜一下,很多的

閱讀全文

與android更新伺服器端的json文件相關的資料

熱點內容
cgijava編程 瀏覽:412
打不開word文件顯示較高版本 瀏覽:790
iphone6如何不自動鎖屏密碼 瀏覽:476
南京結婚預約在哪個網站 瀏覽:125
招商銀行app開戶行 瀏覽:692
清華網路教育如何轉移到電腦上 瀏覽:651
網路編程是怎麼回事 瀏覽:280
巨微英語4級搭配什麼app 瀏覽:876
bb平台手機提交找不到文件 瀏覽:279
什麼app可以智能圖片分類 瀏覽:573
資料庫最近打開文件 瀏覽:838
電腦里沒有畫圖工具欄 瀏覽:70
騰達fh451有幾個版本 瀏覽:742
內蒙古人工費調整都有哪些文件 瀏覽:618
安卓邪惡主題桌面 瀏覽:786
平板製作文件的軟體 瀏覽:306
iphone5s老是定位失敗 瀏覽:526
有哪些太黃被禁播的網站 瀏覽:683
iphone6震動微弱 瀏覽:883
車載數據線哪個牌子可靠 瀏覽:679

友情鏈接