1.引言
虽然Android本身具有SQLite的支持,但SQLite数据只能进行简单的CRUD操作,数据类型也不能太复杂和数据容量不能太大。而访问远程数据库的方法多种多样,主要分为直接和间接两种。直接访问采用JDBC连接技术,但其安全性较低,间接方法主要通过客户端向服务器发送请求,进而采用数据传输的方式进行数据库访问。
当下比较流行的数据传输方式主要有XML和JSON两种方式,由于HTTP协议是从WWW服务器传输超文本到本地浏览器的传送协议,使浏览器更加高效,而HttpClient是支持HTTP协议的客户端编程工具包,因此HttpClient组件为实现远程数据库的连接提供了更为便捷有效的方式。
2.HttpClient简介
HttpClient是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包。它提供的主要的功能包括:实现了所有HTTP的方法(GET,POST,PUT,HEAD等)、支持自动转向、支持HTTPS协议、支持代理服务器等。
3.HttpClient在Android中的应用
3.1 工作原理
(1)客户端通过URL向服务器发送请求,建立连接;
(2)服务器接收客户端请求,并将响应信息返回客户端;
(3)客户端与服务器断开连接。
3.2 服务器端的开发
服务器端采用JSP技术,通过利用JavaBean使用JDBC完成数据库连接,同时,使用Servlet实现数据传输功能。
3.3 手机客户端的开发
Android集成了org.apache.http.client.HttpClient,可以直接实现简单的htttp Get和Post操作。操作实现步骤如下:
(1)创建HttpClient客户端对象;
(2)生成响应的请求信息;
(3)使用execute方法发送HTTP GET(HTTP POST)请求,并返回HttpResponse对象,通过利用getStatusCode获取返回码以判断请求是否发送成功(若返回码为200,则成功);
(4)解析返回信息。
关键代码如下:
4.结语
本文在利用JavaBean工具类对数据库进行操作的基础上,通过使用Servlet进行数据的输入输出,并结合HttpClient组件传送Http数据,顺利实现了Android与远程数据库的间接访问,同时也在一定程度上加强了对数据库的安全性保护。未来HttpClient组件技术还将在Android手机平台中越来越广泛地得以应用。