陳潔
摘 要:隨著移動技術的發(fā)展,基于Android操作系統的移動設備在企業(yè)管理系統中的參與度越來越高,大量的企業(yè)級管理系統都需要支持Android應用程序的訪問。然而受限于硬件性能,Android設備目前只能運行一些小型數據庫,因此如何使Android應用程序也能訪問大型數據庫的技術成為關鍵。該文以SQL Server數據庫為例,介紹了兩種常用的Android應用訪問方法,并做出比較,為實際中的應用提供參考。
關鍵字:SQL Server Android 數據庫訪問
中圖分類號:TP312 文獻標識碼:A 文章編號:1672-3791(2014)12(c)-0012-01
SQL Server是由Microsoft公司推出的一種可擴展的、高性能的、為分布式客戶機/服務器計算所設計的數據庫管理系統,由于其在Windows平臺上的優(yōu)越性,常被一些中小型企業(yè)作為企業(yè)數據庫建設的首選。
Android是一種基于移動設備的操作系統,它以其強大的功能和友好的界面,在目前幾大主流移動平臺系統的競爭中占據優(yōu)勢,在2014年的智能手機操作系統市場份額已接近85%。因此,面對目前幾乎人手一臺移動設備的情況,從企業(yè)發(fā)展和管理的角度來說,重視移動設備的接入,使企業(yè)管理和辦公移動化是非常有必要的,而如何讓Android應用訪問大型的數據庫成為了主要問題。
1 基于SQL Server的Android應用訪問
以Android應用訪問SQL Server數據庫為例,介紹兩種常用的訪問方式:基于Web Service的方式和基于JDBC的方式。
1.1 基于Web Service的訪問方式
Web Service技術,能使得運行在不同機器上的不同應用無需借助附加的、專門的第三方軟件或硬件,就可相互交換數據或集成。依據Web Service規(guī)范實施的應用,無論它們所使用的語言、平臺或內部協議是什么,都可以相互交換數據。
因此,利用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發(fā)送SQL(結構化查詢語言)指令,實現各種數據庫的操作。而使用JDBC實現Android應用訪問SQL Server數據庫需要三個步驟:加載JDBC驅動程序、建立連接、發(fā)送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);
當成功連接數據庫之后,要創(chuàng)建一個Statement對象,Statement主要工作是把 SQL語句發(fā)送給DBMS,最后就可以發(fā)送操作數據庫的語句并處理結果了。
2 兩種方式的比較
以上兩種方式都可以完成對SQL Server數據庫的訪問,比較來說JDBC直連的方式更為簡單方便,但是安全性不高,并且當訪問的數據量過多時容易出問題。通過Web Service訪問的方式雖然不夠靈活,但只需要數據庫提供部分訪問數據的功能,當對數據庫不需完全訪問時,是比較常用的方法。
3 結語
該文主要基于常用的SQL Server數據庫,介紹了兩種Android平臺應用訪問數據庫的方法,并做出比較,為開發(fā)人員的實際使用提供參考。
參考文獻
[1] 利用JDBC連接服務器數據庫.http://blog.csdn.net/conowen/article/details/7435231/.