我有一个Java servlet Web服务器和一个相互通信的android应用程序。将自定义对象(EX:User对象)从服务器传递到android的正确方法是什么。
实施例: 用户通过Android设备登录,用户的电子邮件和密码被发送到服务器进行身份验证。服务器现在需要将用户对象发送回Android设备。
如果您可以附加一个示例或链接到教程,这将是伟大的。
答案 0 :(得分:1)
https://www.youtube.com/watch?v=Gyaay7OTy-w
创建一个扩展AsyncTask的类 实现覆盖方法(Alt + Insert) 在背景中做: 建立http网址连接
try {
URL url=new URL(urladdress);
HttpURLConnection con= (HttpURLConnection)url.openConnection();
con.setRequestMethod("GET");
con.setRequestMethod("POST")
con.setDoOutput(true);
con.setDoInput(true);
return con;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
现在从此连接下载数据
if(con==null) {
Toast.makeText(ctx,"Connection is null",Toast.LENGTH_LONG).show();
}
try{
InputStream is = new BufferedInputStream(con.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer jsonData= new StringBuffer();
while ((line=br.readLine())!=null)
{
jsonData.append(line+"/n");
}
br.close();
is.close();
return jsonData.toString();
} catch (IOException e) {
e.printStackTrace();
}
现在解析这个jsonData
try{
JSONArray ja = new JSONArray(jsonData);
JSONObject jo = null;
//parse Data
}
在onPostExecute中调用将接收数据的必需java文件 编写一个脚本,用于转换从服务器恢复的数据并以json格式发送数据
注意 - 这些代码属于三个不同的类,所以不要尝试复制/粘贴
答案 1 :(得分:1)