zoukankan      html  css  js  c++  java
  • webservice

    mark以下前辈写的作品:
     
     
           真正对数据库数据进行操作的都还是webservice,
    把android工程看成是网页就可以了,网页向服务器发送请求,然后服务器响应.

    具体android链接服务器用什么语句,只要你理解了原理,光靠猜也猜到了.
    不要忘记android-webservice-mysql之间的关系就可以了.思路要清晰.
    URL加载要访问的路径,然后用HttpURLConnection接收url的openConnection,
    然后就是各种流包装来包装去,
     
           当然,首先想到的是直接访问数据库的方式,但是这也就意味着数据库的账户密码就直接放到客户端中,不仅是安全性不能保证,而且意味着应用的所有业务逻辑判断必须放到手机端,当系统需要多终端支持时,就必须在其他的终端中重写所有的业务逻辑。
    前辈们早就为我们提出了另一种解决方案:使用中间人进行数据访问,而且中间人不仅担任数据访问的角色,还能够对业务逻辑进行处理,这样,只要系统结构足够合理,手机终端需要做的就仅仅是数据显示的任务了。这个中间人就是今天要说的 Web Service,贴一句维基百科对Web Service的定义:
    Web服务是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。
    这个定义已经指出了:Web service的通信方式使用标准的Web协议;Web service能够提供多平台的支持。那么,为了获得更多的平台支持,最好也最方便的方法就是实用http协议作为通信协议,这样不仅android/ios等移动中端可以访问,pc平台的中端也可以支持,甚至web app也可以使用这一服务。
    如果直接说整个数据的流向,可以总结为(以android为例):android向Web Service发起请求(WebService可以简单理解为是一个网站,而发起请求则可简单理解为是访问一个网址),WebService根据请求请求数据库并作相应的业务逻辑处理,向android返回数据(返回的数据可以简单认为是访问网址时浏览器看到的网页),android再根据返回的数据进行解析,获取相应的数据。
    如果上面对于第一次接触的同学还不好理解的话,下面举个简单的栗子,以获取某省各省市的当天的天气情况为例(纯属个人YY ):
      • 输入:省名称

    • 输出:各城市天气情况
    那么,android要做的就是用http协议访问服务地址:
    http://hostname/getCityWeather?province=hb
    
    而服务端返回湖北省各城市的天气情况的JSON 数据(当然还可以是其他格式的数据):
    [{"CityId":1,"CityName":"武汉","LowTemperature":20,"HighTemperature":23,"Weather":"多云"},{"CityId":1,"CityName":"仙桃","LowTemperature":20,"HighTemperature":23,"Weather":"多云"}]
    
    然后,android解析字符串(android中有JSON解析的库),得到武汉跟仙桃的天气情况,完成整个数据通信过程。这里推荐使用 进行服务资源的访问。

    当然,上面的栗子只是一个很简单的数据访问,实际的WebService可能要涉及到更复杂的业务逻辑,同时要对访问权限进行控制,以保证数据的安全性,在这里就不多说。
    以上回答若有错误或不足之处还请各位同学指正。
  • 相关阅读:
    送给每天用电脑超4小时的朋友!!
    股票技术指标分析详细
    2003安装新版MSN9的方法 / MSN9 for 2003
    买卖股票基本原则新手参考
    更改Windows软件默认安装路径
    永不套牢的方法(教你正确止损)
    股票的技术参数很多,图线参数常见的有这些
    教育网ftp大全
    【笔记】【汇编语言】第4章 第一个程序
    【笔记】【汇编语言】第2章 寄存器
  • 原文地址:https://www.cnblogs.com/curry1234/p/4929605.html
Copyright © 2011-2022 走看看