Json学习应用
Json应用
由于懂味项目的需要、我这两天开始了开始了JSon的学习和应用、对于这个JSon,最初自己是什么都不懂、甚至都不知道它是应用到什么地方。没办法、做软件开发的就是这样:一个项目给你、即使你什么都不懂,都要很快地把它学习和应用。
按照以往常用的方法、从百度上一个一个地找;看文档、读博客...慢慢地发现所有的文档、博客都是源自一个人的。就这样慢慢地查看了各个网页的资料后。(查看资料的过程不是想象的那么容易、一个个网页下来,眼珠子都快掉下来了。而且这个过程就花了我一天左右的时间)选择了一个最为详细的博客作为参考、然后按照其步骤走下去。
值得庆幸的是按模板走的过程非常顺利、之前按李雄志和魏垚他们给资料走、走个几个过程都没有成功。有了这个成功的案列后、我就开始一步步查看案列,分析其中的过程。分析完后才发现原来Json就是个纸老虎。像hu总说的那样、跟其他的没什么两样。只是一种格式而已。
下面我就详细分析下它的应用过程吧:最开始、我们在运用前需要下载好Json的包、我应用时下载了好几个包、还没了解每个包相应的作用。怕麻烦的话、我把它附在后面,有需要可以下载使用。包的应用最好是复制到lib目录下;之前的那种引入包的方法在这里会有问题。建议自己复制。好了、前期的准备工作好了后、下面我们开始新建一个Servlet类、里面有自动生成的DoPost方法和DoGet方法;我们应用时先在DoPost方法里调用DoGet方法、代码如下:
布局用于显示所接收的数据。然后回到MainActivity里、进行地址连接,这里需要注意的是:1、连接网络地址,2、接收时关于对应的Key值。代码如下:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); System.out.println("-=-=-=-=-=-="); setContentView(R.layout.activity_main); System.out.println("8888888888888888888"); try{ StringBuffer sb = new StringBuffer();//在测试过程中,经常是用本机做测试服务器,访问本机的IP地址要设置为10.0.2.2 String url = "http://10.0.2.2:8080/Coupons/JsonServletAndroid"; String body = getContent(url); JSONArray array = new JSONArray(body); System.out.println("所得Json的长度是:"+array.length()); for(int i=0; i<array.length(); i++){ System.out.println("标记符11111111111111111111"); JSONObject obj = array.getJSONObject(i); System.out.println("打印出第"+i+"个数据是:"+obj.getInt("User")+"-=-"+obj.getInt("Pwd")); sb.append("tel:").append(obj.getString("tel")).append("/r"+"/n"); sb.append("name:").append(obj.getString("User")).append("/r"+"/n"); sb.append("pwd:").append(obj.getString("Pwd")).append("/t"); sb.append("email:").append(obj.getString("email")).append("/r/n"); sb.append("----------------------/r/n"); } TextView textView = (TextView)findViewById(R.id.textView); textView.setText(sb.toString()); }catch(Exception e){}}