网站首页  词典首页

请输入您要查询的论文:

 

标题 Android通过WebService连接SQLServer浅析
范文 刘颖++胡畅霞++米建
摘 要 本文通过对Android连接数据库的研究,选择Microsoft Visual Studio 2010,eclipse和SQLServer为技术开发平台,以移动开发为案例,设计了Android通过WebService与数据库的连接。
关键词 WebService;Android;SQLServer
中图分类号TP3 文献标识码 A 文章编号 1674-6708(2015)145-0048-01
随着现代社会中手机用户的普遍增多,手机应用程序也如雨后春笋般成长起来。一个出色的手机应用程序免不了要与数据库进行连接,但是Android不能直接连接数据库,因此本文介绍了通过一个“桥梁”——webservice来访问SQLServer数据库。
1 Android连接数据库的方式
在Android开发中,一般有如下几种方式连接数
据库。
1)Android访问自带的SQLite数据库。通过使用数据库操作帮助类继承SQLiteOpenHelper。在DAO层借助数据库操作帮助类写数据库操作的方法。Activity调用DAO层的数据库操作方法进行操作。
2)Android可以通过Http协议获取数据。将Http协议连接对象,通过Post请求向服务器传送数据,数据放在HTML HEADER内一起传送到服务端URL地址。
3)通过SOAP协议获取数据。客户生成SOAP请求,嵌入在HTTP POST请求中,发送到服务器上,服务器再把这些请求通过HTTP应答的方式把它送回到客户端。
2 Android连接数据库的详细设计
2.1 项目背景
本人承担了河北省大学生创新项目《“互联网+”下毕业设计评价系统》,采用了SQL Server数据库,第一阶段中利用.net技术已经开发了网站,第二阶段需要开发配套的手机APP,但是Android如何连接数据库,SQL server中的数据如何通过手机显示,成为了本项目开发的关键问题。
2.2 解决方案
本人采用了SOAP协议,通过WebService这个桥梁实现了对SQLServer数据库的访问。
首先,本人需要设计WebService应用程序连接数据库。在Web.config文件中设置虚拟目录,连接数据库。下面以“在线视频播放”部分功能进行具体说明。
在本模块中,需要根据视频的id,从数据库中获取视频网址,然后在网上进行在线播放。下面是实现步骤。
首先在VS2010中定义WebService:
1)服务名:SelectVideo:在线视频的函数服
务名。
2)参数:id:在线视频的id,通过id获取视频的网址。
3)返回值:list:返回视频的网址。
Public List SelectVideo(String id),SelectVideo函数,通过视频id获取视频地址,其SQL语句如下。
String sql=”Select F_path from V_Video where F_id= ”+id+” ”。
SqlDataReader reader=db.ReturnDataReader(sql),定义SqlDataReader类型变量,执行SQL语句。
list.Add(reader[0].ToStirng()),用list数组返回视频网址
之后在eclipse中, 引入ksoap2-android项目的ksoap2-android-assembly-3.0.0-RC.4-jar-with-dependencies.jar包。之后用ksoap2-Android调用Webservice,具体操作过程如下。
(1)创建HttpTransportSE对象,该对象用于调用WebService操作;
final HttpTransportSE ht=new HttpTransportSE(” ”);
(2)创建SoapSerializationEnvelope对象;
final SoapSerializationEnvelopeanvelope =new SoapSerializationEnvelope (SoapEnvelope.VERLL);
(3)创建SoapObject对象,创建该对象时需要传入所要调用的WebService的命名空间;
static final String SERVICE_NS = “http://tempuri.org/”;
SoapObject soapobject=new SoapObject(SERVICE_NS,methodName)
将参数传给Web Service服务端,调用Soapobject对象的addproperty方法。
例如:SoapObject.addProperty(“zjid”,zjid),为WebService服务器传递参数,zjid就是该视频的id,通过id,获取视频的网址,然后进行视频的播放。
(4)直接对bodyout属性赋值,将SoapObject对象设为SoapSerializationEnvelope的传出SOAP消
息体。
envelope.bodyout=soapobject;
(5)调用对象的call方法,并以SoapSerializationEnvelope作为参数调用远程WebService。
ht.call(SERVICE_NS+methodName,envelope);
(6)调用完成后,访问SoapSerializationEnvelope对象的bodyin属性。
SoapObject result=(SoapObject)envelope.bodyin;
(7)在Activity中用SoapObject定义变量调用
函数。
SoapObject detail=Web.getVideo(id)
String path=detail.getProperty(i).toString();
通过这些操作,我们就可以通过WebService对数据库进行数据访问,通过视频id获取视频网址,从而进行视频的在线播放。
3 结论
作者利用WebServcie这个桥梁,实现Android和SQL Server数据库的连接,并将该方法应用在了大学生创新项目中,实践证明,该方法可以高效快速的显示数据库中的数据。
参考文献
[1]袁向英.基于Android系统的数据库开发和插件技术的应用开发.2014.
[2]王绍祥,邵禹斌,龙华,等.Android手机与数据库的一种数据交互方法.2011.
[3]黄淑静,杨红梅.利用JSON+WebService实现Android访问远程数据库.2013.
[4]王飞,王创伟.基于Android的数据库初始化方案的研究与应用.2012.
随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/3/10 15:56:47