4个答案 按时间排序 按投票排序
-
采纳的答案
你需要搜一下Gson,和apache httpclient下载导入对应的jar包
web端:
首先,想办法把mysql取出的数据放到一个list中;
然后,参考这个帖子http://huyizizhen.iteye.com/blog/1453621 将list转成json
最后,返回给客户端out.println(json.toString());
客户端:
需要一个httpclient
String jsonstr = httpclient.get(url);2014年5月12日 10:04
-
通过 JSON RPC,这是本人前几天做的demo,应该满足你的需求,可直接运行
java jsonrpc Server服务器
http://download.csdn.net/detail/zengxx1989/7310371
Jsonrpc_android_Client
http://download.csdn.net/detail/zengxx1989/73103152014年5月12日 16:16
-
给你点代码看吧 package com.demo; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.params.BasicHttpParams; import org.apache.http.protocol.HTTP; import android.util.Log; public class WebDataGetApi { private static final String TAG = "WebDataGetAPI"; private static final String USER_AGENT = "Mozilla/4.5"; protected String getRequest(String url) throws Exception { return getRequest(url, new DefaultHttpClient(new BasicHttpParams())); } protected String getRequest(String url, DefaultHttpClient client) throws Exception { String result = null; int statusCode = 0; HttpGet getMethod = new HttpGet(url); Log.d(TAG, "do the getRequest,url=" + url + ""); try { getMethod.setHeader("User-Agent", USER_AGENT); // HttpParams params = new HttpParams(); // 添加用户密码验证信息 // client.getCredentialsProvider().setCredentials( // new AuthScope(null, -1), // new UsernamePasswordCredentials(mUsername, mPassword)); HttpResponse httpResponse = client.execute(getMethod); // statusCode == 200 正常 statusCode = httpResponse.getStatusLine().getStatusCode(); Log.d(TAG, "statuscode = " + statusCode); // 处理返回的httpResponse信息 result = retrieveInputStream(httpResponse.getEntity()); } catch (Exception e) { Log.e(TAG, e.getMessage()); throw new Exception(e); } finally { getMethod.abort(); } return result; } /** * 处理httpResponse信息,返回String * * @param httpEntity * @return String */ protected String retrieveInputStream(HttpEntity httpEntity) { int length = (int) httpEntity.getContentLength(); if (length < 0) length = 10000; StringBuffer stringBuffer = new StringBuffer(length); try { InputStreamReader inputStreamReader = new InputStreamReader( httpEntity.getContent(), HTTP.UTF_8); char buffer[] = new char[length]; int count; while ((count = inputStreamReader.read(buffer, 0, length - 1)) > 0) { stringBuffer.append(buffer, 0, count); } } catch (UnsupportedEncodingException e) { Log.e(TAG, e.getMessage()); } catch (IllegalStateException e) { Log.e(TAG, e.getMessage()); } catch (IOException e) { Log.e(TAG, e.getMessage()); } return stringBuffer.toString(); } } 建立JsonDataGetApi.java import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; public class JsonDataGetApi extends WebDataGetApi { private static final String BASE_URL = "http://10.0.2.2:82/AccountService/"; private static final String EXTENSION = "Json/";; public JSONObject getObject(String sbj) throws JSONException, Exception { return new JSONObject(getRequest(BASE_URL + EXTENSION + sbj)); } public JSONArray getArray(String sbj) throws JSONException, Exception { return new JSONArray(getRequest(BASE_URL + EXTENSION + sbj)); } } 我们的主Activity中调用刚才的方法, 在这一步中我们需要引入Google的gson 库gson-1.6.jar public class WebData extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); getJsonData(); } public void getJsonData() { JsonDataGetApi api = new JsonDataGetApi(); JSONArray jArr; JSONObject jobj; try { //调用GetAccountData方法 jArr = api.getArray("GetAccountData"); //从返回的Account Array中取出第一个数据 jobj = jArr.getJSONObject(0); GsonBuilder gsonb = new GsonBuilder(); //Json中的日期表达方式没有办法直接转换成我们的Date类型, 因此需要单独注册一个Date的反序列化类. //DateDeserializer ds = new DateDeserializer(); //给GsonBuilder方法单独指定Date类型的反序列化方法 //gsonb.registerTypeAdapter(Date.class, ds); Gson gson = gsonb.create(); Account account = gson.fromJson(jobj.toString(), Account.class); Log.d("LOG_CAT", jobj.toString()); ((TextView) findViewById(R.id.Name)).setText(account.Name); ((TextView) findViewById(R.id.Age)).setText(account.Age); ((TextView) findViewById(R.id.Birthday)).setText(account.Birthday .toGMTString()); ((TextView) findViewById(R.id.Address)).setText(account.Address); } catch (Exception e) { Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show(); e.printStackTrace(); TextView movie_Address = (TextView) findViewById(R.id.Address); movie_Address.setText(e.getMessage()); } } } layout下的main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/Name" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/Age" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/Birthday" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/Address" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> 大致就是这么多
2014年5月12日 10:56
-
首先你从数据库读取到一系列的对象,当然,也可以用Map来代替,然后把它们放在一个List中,然后再调用JSON库的序列化方法,使之成为一个json字符串,然后再写到客户端就可以了,这个时候客户端收到的就是一个JSONArray了。
2014年5月11日 23:10
相关推荐
本文将深入探讨“Android客户端远程登录Web服务器数据交换实例”,讲解如何使用MySQL数据库、JSON数据传输以及Struts2、JavaBean和Servlet等技术。 首先,让我们了解一下MySQL数据库。MySQL是一款开源的关系型...
Android 中通过 JSON 向 MySQL 中读写数据的方法是指在 Android 应用程序中使用 JSON(JavaScript Object Notation)格式将数据上传到 MySQL 数据库中,并从 MySQL 数据库中读取数据。这种方法可以实现 Android 应用...
Android客户端接收到响应后,再次解析JSON,将数据呈现给用户。 在描述中提到,此示例可能是对网上的教程进行了改进,这意味着可能包括了错误修正、性能优化或者功能增强。提供的网址可能详细解释了如何实现这一...
5. **数据解析与响应处理**:当服务端返回验证结果时,Android客户端需要解析这个JSON响应,通常使用Gson或Jackson库。如果登录成功,可以显示欢迎消息或跳转到主界面;如果失败,则显示相应的错误提示。 6. **安全...
这个项目"Android代码-利用JSON通过Android客户端访问web服务器实现一个登录功能.zip"提供了如何利用JSON进行这一操作的实例。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,...
2. **JSON解析**:Android客户端需要接收并解析服务器返回的数据,通常这些数据是以JSON格式传输的。可以使用`Gson`、`Jackson`或者`org.json`库来完成JSON的解析工作。 3. **UI设计**:登录界面的构建通常涉及`XML...
例如,在一个成绩查询系统中,当Android客户端向服务器发送请求并接收到JSON格式的数据后,可以通过解析JSON对象来获取成绩信息,并将这些信息展示给用户。 而网页客户端通常使用JavaScript技术,并且结合Ajax...
JSON从服务器下载数据到Android客户端 包括web端和Android手机端 注意修改ip和mySQL用户名 密码 详情见 http://blog.csdn.net/u011109881/article/details/40110613
在本项目中,我们主要探讨如何通过Android客户端访问web服务器,实现一个登录功能。这个功能涉及到服务端开发、数据库设计以及Android应用的构建。以下是详细的知识点解析: 1. **服务端开发**: - 服务端通常使用...
本项目主题“安卓网站交互JSONxmlWebserviceUPnP相关-利用JSON通过Android客户端访问web服务器实现一个登录功能”主要涉及以下几个关键技术点: 1. **JSON(JavaScript Object Notation)**:JSON是一种轻量级的...
在Android客户端访问Web服务器的场景中,主要涉及的是Android应用开发和网络通信技术。这个过程通常包括以下几个关键知识点: 1. **HTTP/HTTPS 协议**:Android客户端与Web服务器之间的通信大多基于HTTP或HTTPS协议...
在这个特定的案例中,我们有一个源码示例,展示了如何利用JSON(JavaScript Object Notation)这一轻量级的数据交换格式,通过Android客户端来访问Web服务器,实现一个登录功能。这涉及到网络编程、JSON解析以及用户...
本示例中的“安卓Android源码——利用JSON,通过安卓Android客户端访问web服务器,实现一个登录功能”是针对这一主题的具体实践。下面将详细讲解涉及的知识点。 1. JSON(JavaScript Object Notation):JSON是一种...
本篇将详细介绍如何利用JSON实现在Android客户端与服务器之间的通信,并涉及服务器端连接数据库以及Android与数据库的数据交互。 一、JSON简介 JSON(JavaScript Object Notation)是一种简洁、易读的数据格式,它...
这篇毕业设计项目主要展示了如何利用Android客户端访问web服务器来实现一个登录功能,涵盖了服务端、数据库以及Android端的完整流程。下面将详细讲解这个过程中的关键知识点。 首先,我们需要了解Android客户端开发...
该资源包含一个完整的Android客户端应用和WEB服务器端的开发代码,名为"Android客户端+WEB服务器端完整代码",主要用于构建一个新闻信息管理系统。系统的主要特点是实现了客户端与服务器端的交互,便于用户获取和...
在安卓(Android)开发中,实现一个通过客户端访问Web服务器并利用...以上就是实现安卓Android客户端利用JSON通过网络访问web服务器实现登录功能涉及的主要技术点。理解并掌握这些知识,对于安卓开发者来说至关重要。
实现的功能:通过Android客户端访问web服务器,实现一个登录功能,判断用户输入的用户名与密码是否与数据库的一致。 使用技术:服务端:Struts2+javabean+servlet(struts2的) 客户端:Android 4.0.2 数据库:MySQL...
在Android应用开发中,实现一个通过客户端访问...通过以上步骤,我们可以构建一个完整的Android客户端访问web服务器的登录功能。在实际开发中,还需要考虑用户体验、性能优化、兼容性等问题,确保应用的质量和稳定性。
- 数据解析:接收到Json响应后,Android客户端使用Gson或Jackson库将Json字符串转化为Java对象,便于在应用中使用。 4. **数据库交互**: - 服务器端通过Hibernate与数据库进行交互,执行CRUD(创建、读取、更新...