基于SQL Server的Android应用访问方法的实现
2015-03-30陈洁
陈洁
摘 要:随着移动技术的发展,基于Android操作系统的移动设备在企业管理系统中的参与度越来越高,大量的企业级管理系统都需要支持Android应用程序的访问。然而受限于硬件性能,Android设备目前只能运行一些小型数据库,因此如何使Android应用程序也能访问大型数据库的技术成为关键。该文以SQL Server数据库为例,介绍了两种常用的Android应用访问方法,并做出比较,为实际中的应用提供参考。
关键字:SQL Server Android 数据库访问
中图分类号:TP312 文献标识码:A 文章编号:1672-3791(2014)12(c)-0012-01
SQL Server是由Microsoft公司推出的一种可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,由于其在Windows平台上的优越性,常被一些中小型企业作为企业数据库建设的首选。
Android是一种基于移动设备的操作系统,它以其强大的功能和友好的界面,在目前几大主流移动平台系统的竞争中占据优势,在2014年的智能手机操作系统市场份额已接近85%。因此,面对目前几乎人手一台移动设备的情况,从企业发展和管理的角度来说,重视移动设备的接入,使企业管理和办公移动化是非常有必要的,而如何让Android应用访问大型的数据库成为了主要问题。
1 基于SQL Server的Android应用访问
以Android应用访问SQL Server数据库为例,介绍两种常用的访问方式:基于Web Service的方式和基于JDBC的方式。
1.1 基于Web Service的访问方式
Web Service技术,能使得运行在不同机器上的不同应用无需借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据Web Service规范实施的应用,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。
因此,利用Web Service访问SQL Server数据库是一种比较常见的方法。该方法是在服务器端安装Web Service程序,由其访问SQL Server数据库,同时为Android应用提供接口函数,Android应用通过调用这些接口函数来达到访问数据库的目的。
在此,我们使用适合手机的Web Service客户端类库KSOAP2,需要下载并添加此类库,以下给出Android调用Web Service客户端的主要代码。
private ConWebService conWebService = new ConWebService(
webserviceUrl ,nameSpace);
public ArrayList
{ArrayList
PropertyInfo pro = new PropertyInfo();
pro.setName("key");
pro.setValue(key);
arrayList =conWebService.getSoapData("getData", pro);
return arrayList;}
同时还需设计实现获取数据功能的类ConWebservice完成数据的读取功能。
1.2 基于JDBC的访问方式
JDBC是Java Data Base Connectivity的缩写,意思为“Java数据库连接”,由一组用Java语言编写的类和接口组成,为Java层直接操作关系型数据库提供了标准的API。原理很简单,主要是向服务器的DBMS发送SQL(结构化查询语言)指令,实现各种数据库的操作。而使用JDBC实现Android应用访问SQL Server数据库需要三个步骤:加载JDBC驱动程序、建立连接、发送SQL语句。
在Android工程中要使用JDBC的话,要导入JDBC的驱动,下载该驱动包(jtds-1.2.jar)并导入。接下来建立连接,实现代码为:
Connection con = null;
Class.forName("net.sourceforge.jtds.jdbc.Driver");
con = DriverManager.getConnection( "jdbc:jtds:sqlserver://
DbComputerNameOrIPAddr:1433/DatabaseName",UserName,Password);
当成功连接数据库之后,要创建一个Statement对象,Statement主要工作是把 SQL语句发送给DBMS,最后就可以发送操作数据库的语句并处理结果了。
2 两种方式的比较
以上两种方式都可以完成对SQL Server数据库的访问,比较来说JDBC直连的方式更为简单方便,但是安全性不高,并且当访问的数据量过多时容易出问题。通过Web Service访问的方式虽然不够灵活,但只需要数据库提供部分访问数据的功能,当对数据库不需完全访问时,是比较常用的方法。
3 结语
该文主要基于常用的SQL Server数据库,介绍了两种Android平台应用访问数据库的方法,并做出比较,为开发人员的实际使用提供参考。
参考文献
[1] 利用JDBC连接服务器数据库.http://blog.csdn.net/conowen/article/details/7435231/.