android 与后台交互的两种方式xml和json

Android与JSP数据交互 Android前端通过Http协议与J2EE后端数据交互。工具eclipse、MySQL、Tomcat。通过JoSn获取数据。Android端实现对MySQL增删改查功能。 立即下载


Android 中客户端与后台的交互都比较简单,一个是xml一个是json数据。

Xml的交互之后会写,因为本人不太喜欢这个方式。

说一下json数据的交互方式

Json交互方式准照的是一个原始,遇见大括号就创建类,遇见中括号就建集合。

 HTTP 200 OK
Content-Type: application/json
Vary: Accept
Allow: GET, POST, HEAD, OPTIONS


{
    "count": 81,
    "next": "http:/=6",
    "previous": "http://127.0",
    "results": [
        {
            "id": "21039460",
            "uer": "8598",
            "type": "592263",
            "fle_size":42733,
            "fie_path": "oqi8gultn1mq9ofl.rmvb",
            "imge": "o_1ae6dj5l318fe17su1gb4tm587hg.jpg",
            "im_ice": 0,
            "play_time": "1969Z",
            "duation": 256,
            "esc": "易接受。",
            "tile": "作版)",
            "pay_num": 859,
            "shar: "育",
            "ad_type": 1,
            "sle": 0,
            "vad_m_num": 0,
            "le_um": 4,
            "cree_time": "2016-00Z",
            "plul": "http:/kuffAtMt4=",
            "tehers": "",
            "permission": 0
        },
        {
            "id": "357371",
            "user": "85858998",
            "type": "261105",
            "file_size": 157220937,

以这个为例,起始就很简单了,因为片段是公司服务器的我把许多东西去掉了,为了少麻烦减

建一个类(user)里面的字段3个

又有一个集合results

List<results> list= new Arraylist<results>();

然后是两种选择一种是restults的内部类,一个是外部类,当然这个外不类的名字就可以随便了,不过还是建议用这个results。

 

我们一般是用gson解析json

Gson gson =new Gson()

 User user = gson.fromJson(response.toString(), User.class);

然后我们通过get方法获得相应的字段

 

 

另外一种是xml数据的交互方式

<?xml version="1.0" encoding="UTF-8"?>    

<beauties>    

    <beauty>    

        <name>小智</name>    

        <age>28</age>    

    </beauty>    

    <beauty>    

        <name>小漠</name>    

        <age>23</age>    

    </beauty>    

</beauties>   

以这个片段为例

注意两个地方一个是document作用的标签beauties一个就是正常的标签name 或者age

 

public class Beauty {  

      

    //解说姓名  

    private String name;  

    //解说年龄  

    private String age;  

  

    public String getName() {  

        return name;  

    }  

  

    public void setName(String name) {  

        this.name = name;  

    }  

  

    public String getAge() {  

        return age;  

    }  

  

    public void setAge(String age) {  

        this.age = age;  

    }  

  

    @Override  

    public String toString() {  

        return "解说资料 [年龄=" + age + ", 姓名=" + name + "]";  

    }  

}  

 

 

 

 

  XmlPullParser xpp = Xml.newPullParser();  

        // 设置输入流 并指明编码方式  

        xpp.setInput(is,"UTF-8");  

        // 产生第一个事件  

        int eventType = xpp.getEventType();  

          

        while (eventType != XmlPullParser.END_DOCUMENT){  

             switch (eventType) {  

                         // 判断当前事件是否为文档开始事件  

                         case XmlPullParser.START_DOCUMENT:  

                             mList = new ArrayList<Beauty>(); // 初始化books集合  

                             break;  

                         // 判断当前事件是否为标签元素开始事件  

                         case XmlPullParser.START_TAG:  

                             if (xpp.getName().equals("beauty")) { // 判断开始标签元素是否是book  

                                 beauty = new Beauty();  

                             } else if (xpp.getName().equals("name")) {  

                                 eventType = xpp.next();//让解析器指向name属性的值  

                                 // 得到name标签的属性值,并设置beauty的name  

                                 beauty.setName(xpp.getText());  

                             } else if (xpp.getName().equals("age")) { // 判断开始标签元素是否是book  

                                 eventType = xpp.next();//让解析器指向age属性的值  

                                 // 得到age标签的属性值,并设置beauty的age  

                                 beauty.setAge(xpp.getText());  

                             }   

                             break;  

                

                         // 判断当前事件是否为标签元素结束事件  

                         case XmlPullParser.END_TAG:  

                             if (xpp.getName().equals("beauty")) { // 判断结束标签元素是否是book  

                                 mList.add(beauty); // 将book添加到books集合  

                                 beauty = null;  

                             }  

                             break;  

                         }  

                         // 进入下一个元素并触发相应事件  

                         eventType = xpp.next();  

                     }  

                     return mList;  

 

 

 

这个是使用

  //通过assertmanager的open方法获取到beauties.xml文件的输入流  

            InputStream is = this.getAssets().open("beauties.xml");  

            //初始化自定义的实现类BeautyParserImpl  

            BeautyParserImpl pbp = new BeautyParserImpl();  

            //调用pbp的parse()方法,将输入流传进去解析,返回的链表结果赋给beautyList  

            beautyList = pbp.parse(is);  

 

 

/**

     * 显示到手机上

     */  

    private void setupViews(){  

        String result = "";  

          

        for (Beauty b : beautyList) {    

            result += b.toString();    

        }    

  

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

        textView.setText(result);   

    }  

 

 

 

 

Android使用XML和JSON两种数据格式通过网络通信实现资讯客户端案例 Android使用XML和JSON两种数据格式通过网络通信实现资讯客户端案例! 立即下载

相关推荐

[附源码]计算机毕业设计-Steam游戏平台系统论文Springboot程序

项目运行环境配置:(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可4.

JSP、ssm毕设程序源码 1494

安卓开发中,与后台服务器对接之XML解析

XML解析分三种方式使用DOM解析XML数据基础知识 (1)Node,每一对<></>都代表一个节点; (2)NodeList,拥有多个Node的Node; (3)Element,每一个节点是一个Element (4)Document,代表整个xml文件,是一个文档节点例如,解析这个xml文件<?xml version="1.0" encoding="UTF-8"?> <book>

琦琦进阶之路博客 1008

避坑指南:Zabbix poller进程100%占用的5种常见原因及解决方案

本文深入剖析了Zabbix poller进程占用率高达100%的五大常见原因,包括监控项与进程数不匹配、不可达主机资源浪费、数据库性能瓶颈、监控项配置不合理以及版本缺陷。文章提供了从系统化诊断到针对性解决方案的完整指南,并重点介绍了如何通过优化zabbix_server.conf中的StartPollers等关键参数进行有效调优,帮助运维人员从根本上解决这一经典性能问题。

7z8x2c4v6b9的博客 251

Android客户端与服务器端交互数据之json解析

服务器端的工作就是将特定的数据类型转换为json字符串,然后客户端再将json字符串转换成原来的类型,所以json解析是跨平台数据格式转换的一个桥梁, 这里以最常用的对象类型,list包裹对象类型,list包裹String类型,以及list包裹Map对象类型4种情况为例简单介绍json的数据解析 服务器端json所用到的jar包下载(免积分) 服务器端源码下载(免积分) 一、首先服务器

云淡风轻的博客 3万+

Qt —— 调用海康C++版SDK获取摄像头每帧图像,通过OpenCv处理每帧图像后显示在Qt窗口(附:源码)

  关注 笔者 - jxd 微信公众号搜索 “码农总动员” 或 微信扫描下方二维码,了解更多你不知道的XX,O(∩_∩)O

5447

基于AI大模型实现自然语言转SQL、SQL解释、SQL优化和SQL转换

随着大数据和人工智能技术的发展,数据分析和数据挖掘在各行各业中的应用越来越广泛。SQL(Structured Query Language)作为关系数据库的查询语言,是数据分析的重要工具。然而,SQL语言的复杂性和专业性使得许多非技术背景的用户难以直接使用,阻碍了数据的广泛利用。为了降低SQL的使用门槛,许多研究者和企业开始探索如何通过自然语言处理(NLP)技术,将自然语言转化为SQL查询语句,从而让用户可以通过自然语言与数据库进行交互。

AI天才研究院 2239

java json xml app交互_详解JS与APP原生控件交互

“热更新”、“热部署”相信对于混合式开发的童鞋一定不陌生,那么APP怎么避免每次升级都要在APP应用商店发布呢?这里就用到了混合式开发的概念,对于电商网站尤其显得重要,不可能每次发布一个活动,都要发布一个现版本,当然这样对于Android还算可以,但是对于Ios呢?苹果应用商店每次审核的时间基本都在1~2周,这对于一个促销活动来说审核时间实在太长。而混合式开发正好可以解决这个问题,基本的原理时,通...

weixin_39625747的博客 170

EDEM-FLUENT耦合报错几大原因总结(持续更新)

EDEM-FLUENT耦合报错几大原因总结(持续更新)

zheaa的博客 2761

Jsp读取数据库返回json数据,Android客户端接收json

一个问题折腾了两个小时!~程序员真是伤不起的物种。。。 1.起初是mysql读取程序一直卡在 [java] view plaincopy Class.forName("com.mysql.jdbc.Driver");   旁边,通过测试输出得知,即一直没有进入数据库。 于是开始各种的调试之旅。。。IP,端口都改,

努力爬树的猪 2141

C++大牛的博客

1. C++大牛的博客     Bjarne Stroustrup的博客: Bjarne Stroustrup’s Homepage Bjarne Stroustrup,不认识的可以去面壁了,没有他,就没有我们现在的饭碗。Bjarne Stroustrup是丹麦人,目前任教于TAMU。他的Homepage和他的书籍The C++ Programming Language一样

程序猿老樊的博客 6248

【乐企-工具篇】有关乐企发票文件生成- OFD和PDF文件生成

有关乐企发票文件生成-OFD和PDF文件生成

九七的博客 2054

安卓中的XML和JSON

XML和JSON其实还是比较常见了,JAVASE和JAVAEE的学习中或多或少会有些接触的,这篇文章主要关于XML和JSON在安卓中的一些应用。 XML 概述 XML是一种常用的存储数据方式,设计初衷就是为了传输和存储数据。 在Android平台中内部很多地方使用了XML存储: 比如之前的SharedPreferences的存储就是使用了XML文件,持久化存储的同时又兼具轻量的特性。(h...

旧日灯塔 3037

第二篇:APS智能排产实战:OR-Tools与coptpy从入门到案例

专注于具体的技术实现,包括 OR-Tools 和 coptpy 的详细使用指南、建模技巧、日志解读,以及一个完整的两阶段生产排程案例。适合准备动手开发 APS 系统的工程师和研究者。

算法工程师 454

android之客户端与webservice的json方式交互

数据传输量 同等的数据,Json需要传输的数据更少,xml会相对多些,对关注数据量的机器来说,这点比较关键。 扩展性, 虽然xml打着可扩展的名号,但是还没有xml可以扩展,json不可以扩展的。 编码难度 xml跨平台对接更容易出问题,虽然工具很多,但是想在跨平台轻易的调通就不是很容易,而json手工就能写出来,编码就简单很多。 解码难度 这个我觉的json问题很大,特殊字符的处理

天歌独家博客 3967

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Android——JSON和XML解析方式

JSONheXML解析与序列化

qq_43745685的博客 910

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

XML和JSON

本文主要介绍XML和JSON。内容包括:PULL解析XML,SAX解析XML,JSONObject解析JSON,Gson解析JSON

sywyg 7万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

安卓开发工程师-数据解析(JSON、XML)

在解析 JSON 或 XML 数据时,可能会出现各种异常,如格式错误、数据缺失、类型不匹配等。为了保证程序的健壮性,需要对这些异常进行合理的处理。在解析 JSON 或 XML 数据时,可以将解析后的数据缓存起来,以便下次使用时可以直接从缓存中获取,而无需重新解析。在 Android 中,可以使用 DOM(Document Object Model)解析器来解析 XML 数据。动态解析是指在不知道 JSON 或 XML 数据的具体结构的情况下,能够灵活地解析和处理数据。包来解析 JSON 数据。

qq_62784677的博客 1049

Android学习——XML与JSON解析

XML与JSON解析 XML解析 1.XML解析的两种机制 XML是一种常用的存储数据方式,在Android平台中内部很多地方使用了XML存储,比如轻量级的SharedPreferences类的有储就是使用了XML文件。 XML解析主要有三种方式:SAX(Simple API for XML)、DOM(Document Object Model)和Android附带的PULL解析器解析XML文件。...

UUUUUltraman的博客 628

android json与xml解析 例子

啥也不说了直接贴代码呃。 JSON解析: import java.io.IOException; import java.util.ArrayList; import java.util.List; import net.wasay.android.client.model.HomeMsg; import org.apache.http.HttpResponse; impor

wdzayyt的专栏 1万+

Android网络数据JSON和XML的解析

市面上有许多API提供商,JSON和XML成为了主要的信息载体,数据解析是相当重要。 1.JSON,由字符串根据特定的格式形成的,传输和解析的速度都非常快。 2.XML,标签式文档,易于拓展,性能没JSON好,但处理大量的数据或者复杂的数据比JSON好使。 本帖用实例代码详解四种数据解析方式,两种是XML的,两种是JSON的。至于JSON和XML的写法规则,大家都懂的,没必要写了。

WallaceLeung的博客 1058

Android之简单的JSON解析和XML解析简介

Android中的解析包括XML解析和JSON解析等,其中XML解析最主要的方法是DOM解析,SAX解析,PULL解析,Android中常用后两种解析。首先来比较一下XML解析和JSON解析的不同之处:     1.JSON和XML的数据可读性基本相同     2.JSON和XML同样拥有丰富的解析手段     3.JSON相对于XML来讲,数据的体积小     4.JSON与JavaSc

cheweilol的专栏 542

[Android]四种方式解析字符串----JSON、SAX、DOM、XML

<br />当是练习吧,分别以JSON、SAX、DOM、XML(android.util.XML)来解析字符串。<br />个人感觉这四种方式的实现由难到易的顺序是:SAX→XML→DOM→JSON。<br /> <br />JSON解析的内容如下,文件名为devdiv.json,存于工程的assets目录下:<br />{ "code":"1", "result":{ "title":"Devdiv移动开发社区", "title_url":"http://www.devdiv.

Sodino的专栏 3822

Android中的JSON解析方式:json; Gson ; Fastjson

本文主要介绍Json数据的解析 ----a,json数据的介绍 ----b,json数据的解析 ----c,gson数据的解析,谷歌公司的一种格式 ----d,fastjson数据的解析,阿里巴巴的一种格式 通过本文的学习能掌握json数据格式的解析,为以后json格式数据的解析做到熟练于心。 Json的全称:JavaScript Object Notation

人生起落,生活苦甜,坚持追求! 4127

android中的Json与xml解析对比分析

Json 、XML 两种数据交换格式: Json简单的说就是Javascript的对象和数组   1.对象:对象在Js中表示为“{}”括起来的内容   2.数组:数组是在Js中是中括号“[ ]”括起来的内容 例:{"weatherinfo":{"city":"北京","cityid":"101010100","temp":"-7","WD":"西南风","WS":"2级","SD":"42

山石的专栏 1118

android和web同步json,android之客户端与webservice的json方式交互

android之客户端与webservice的json方式交互数据传输量同等的数据,Json需要传输的数据更少,xml会相对多些,对关注数据量的机器来说,这点比较关键。扩展性,虽然xml打着可扩展的名号,但是还没有xml可以扩展,json不可以扩展的。编码难度xml跨平台对接更容易出问题,虽然工具很多,但是想在跨平台轻易的调通就不是很容易,而json手工就能写出来,编码就简单很多。解码难度这个我觉...

weixin_36361600的博客 220
上一篇: Android直接可以使用的AES加密帮助类
下一篇: html入门学习
王晓恩
博客等级 码龄11年 28粉丝 86原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值