≡≡≡[论坛搜索]≡≡≡≡
本版  全部
---------------------
≡≡≡≡≡≡≡≡≡≡≡≡≡
   
   
  如果您认为这篇文章不适合在本论坛存在,您可以建议删除


版主:gqm
gqm:选择开发移动应用程序的数据库
本论题共有0人回复

引言

        也许开发所有的网络和企业应用程序项目必须做的事情就是使用关系数据库管理系统(RDBMS)来有效的处理存储和检索基于表的数据的操作。RDBMS已经成了最流行的数据库管理系统(例如Oracle    9i    ,MS    SQL    Server和IBM    DB2),而且也包括以存储过程和触发器的形式在数据库内直接编码应用程序逻辑的能力。像Oracle    9i    和Sybase    Adaptive    Server企业版这样的高级数据库甚至包括用于开发操作数据的Java存储过程或Servlet的数据库中运转Java虚拟机的功能。

        这些工业应用的企业级数据库产品都可使用通用SQL语言存取数据并使用像ODBC    或    JDBC这样的标准化数据库应用程序接口进行查询。这些技术已经发展到任何IT项目无论大小,离开关系数据库就无法工作的地步。面对来自产品经理和用户们日益高涨的把现有的应用程序“可移动化”的请求,然而令企业应用程序开发者大吃一惊的是移动平台的数据库访问机制还未成熟。

        像Palm    OS和    Window    CE    这样的平台支持本地文件系统,用于在列表格式中存储数据;然而,这些文件系统实际上是非常简单的系统,不能通过SQL查询。这使开发者不得不手工编码每一个自定义数据存储和检索的解决方案。

        我还应该提到,移动平台系统的数据库应用程序接口显然是完全不同的,并且你还需要编写你们自己的数据同步化代码以确保手持设备上编辑的内容能够返回企业数据库中。

    

        移动数据库应用程序开发技术    

        默认情况下,PDA平台上的数据同步化是通过使用由开发者编写的一个管道(conduit)处理的。当一个Palm用户按下Sync按钮时,管道软件(驻留在用户系统中的DLL或COM对象)访问    Palm系统数据库并检索一个或更多指定的表。如果需要的话,这个操作可以使用一个ODBC/JDBC调用插入或更新一个企业关系数据库,如果没有其他的任务的话,这个操作就相当地简单。

        Palm甚至为    Java、    COM和    C/C++开发者提供    Conduit    SDK。然而,万一万恶的老板还让你的应用程序能够被    Windows    CE支持并且被手提电脑支持,老天,我们该怎么办?这可能就产生了三个数据库模块(手提电脑中的    JDBC/ODBC/ADO,Palm    OS上的    Palm数据库应用程序接口以及Windows    CE中的    ADOCE)以及三个同步化解决方案(从手提电脑到服务器的    TCP/IP套接字,从Palm到Conduit的HotSync以及从    WinCE设备到Conduit的    Microsoft    ActiveSync    )。

        别害怕,符合我们需要的移动关系数据库已存在了!事实上,随着版本的不断提升,这些移动数据库的功能正变得越来越强大。这其中有许多中数据库系统可以使用在多个平台上,可以使用流行的程序设计语言如    C/C++、    Java和    Visual    Basic,以及服务器端的数据合并和同步化。本文中,我们将探讨三种流行的提供多操作平台和程序设计语言支持的数据库产品。


        Sybase    SQL    Anywhere/Ultralite

        当前的移动数据库市场的领头羊(超过60%市场份额)是    Sybase的    SQL    Anywhere    产品。这种产品的最初的版本是定位于需要同步支持服务器版本的    Sybase数据库(    现在命名为    Adaptive    Server    Enterprise)的移动用户。发展了几年以后,这种产品已经慢慢的包括了一个微型的关系数据库,通常称为    Ultralite,可以在多种平台上配置并且支持许多同步化选项。虽然SQL    Anywhere数据库是一个功能强大的SQL数据库,并且包括了安全性和高端数据库功能比如存储过程和触发器,但是如果你正在多个移动平台上配置应用程序的话你可能会对Ultralite更加有兴趣。现在,    Ultralite可用于    Windows    95/98/NT    、    Palm    OS、    Windows    CE和    EPOC    。它的应用程序接口可用于    C/C++    和    Java程式语言,并且这些应用程序接口在所有的支持的平台上保持不变。

        不象其他从台式机移植到移动设备上的关系数据库系统那样,Ultralite数据库是特意为没有硬盘的设备设计的,这意味着这个数据库在存储器使用上已达到最优化,即使使用最小的内存也能提供最高的性能。SQL    Anywhere包含的另一个强大功能是MobiLink    同步技术。MobiLink是一个基于服务器的同步化引擎,它可以通过串行口、    TCP/IP、    HTTP    、    HotSync    、    ScoutSync或    ActiveSync连接与远程客户通信。使用象    MobiLink    这样的通用同步技术可以极大地削减开发费用,因为MobiLink能够处理高级的同步操作,比如瞬象(snapshot)和时间戳同步、主键维持、冲突的检测和解决等。在服务器端,所有的MobiLink同步逻辑都是通过使用后台数据库的SQL的事件处理的(    MobiLink通过    ODBC    连接数据库,所以事实上支持所有的SQL数据库),通过使用    Certicom的    SSL/TLS    Plus    来支持公钥加密功能(使用椭圆曲线加密系统技术)。如果在编写应用程序前把可能发生的时间都考虑好的话,那么    SQL    Anywhere/Ultralite    组合将是一个极强大的移动数据库和同步解决方案可以满足任何任务。


        Oracle    8i    Lite    

        虽然Sybase可能已经领引了移动计算技术市场空间,但是我们也不能否认Oracle在企业数据库世界中的重要作用。象Sybase的相应产品一样,Oracle    8i    Lite产品可用于所有主要的移动平台(Win32、    Windows    CE、    Palm    OS和EPOC)并且在某些地方还超出了Sybase    Ultralite。8i    Lite包含完整的与后台Oracle数据库同步的能力;然而,这种产品并不就此止步。也包括了    Windows    CE和    Win32的    ODBC客户机和    C/C++/Java/ActiveX应用程序接口支持。这种产品的另外两个特性也许更能引起大家的兴趣:Oracle    Mobile    Agent和Web-To-Go:

        ·Oracle    Mobile    Agents最初市场定位在独立无线中间件产品,但是1999年被收录入8i    Lite产品中。Mobile    Agents是一个通信解决方案,允许    Oracle    8i    Lite应用程序通过网络执行无线同步操作,这些网络有CDPD(AT&T;    Wireless使用)、Mobitex(Cingular    Wireless使用)和    DataTAC    4000/5000(Motient使用)。Oracle    Mobile    Agents通过使用应用程序队列处理信息。这个队列也与运行Oracle高级队列(    Advanced    Queuing)选项的后台Oracle数据库和包括    8i    Lite的    AQ    Lite产品整合。

        ·    Web-To-Go既是数据同步又是一个应用程序部署解决方案。建立在通用网络开发技术诸如∶    Apache和    Java    servlets,    Web-To-Go允许一个网络应用程序    (对于Win32平台    )在服务器内被存档然后自动地、同步地配置到客户机中。Web-To-Go通过Java存储过程或JDBC支持数据库逻辑的开发并且对于那些现有的使用Java    servlets构建的网络应用程序来说它是一个非常强大的移动解决方案。

        我相信市场现在对于    Oracle提供的产品多多少少觉得有点混乱,因为    8i    Lite的各个部分曾经分别上市(Web-To-Go、Oracle    Mobile    Agents、Oracle    Lite等)。另外,    Oracle自己的    OracleMobile解决方案定位在只用于无线应用解决方案诸如∶    WAP、    SMS和    VoiceXML,也已经能够从    8i    Lite那里吸引来不少目光。然而,对于那些开发工业强度的解决方案同时又需要无线通讯的人来说,    8i    Lite是一个数据库、同步化、中间件和应用程序部署技术的综合体。

    

        PointBase    4.0袖珍版    

        象IBM(DB2    Everywhere)与微软(SQL    Server    CE)这样的公司也开发了用于多种平台的移动数据库系统,这些产品的能力都非常强大,使用DB2    或SQL    Server数据库工作的开发者也将很快熟悉这些数据库产品。但除此之外,我还想介绍进军企业级数据库市场的一只新军:PointBase。

        PointBase    非常独特,因为它是第一个经过认证的100%纯Java数据库,可用于任何使用的    Java    2    标准版虚拟机(JVM)的平台。在2001年6月的JavaOne大会上,PointBase发布了PointBase    袖珍版产品——一个为    J2SE    和    J2ME    环境设计的占用资源少的(不到    45KB    )数据库。如果你的目标平台包含一个兼容J2ME的虚拟机,PointBase允许你部署一个SQL数据库应用程序。J2ME    MIDP    虚拟机目前可用于Win32,Palm    OS,Windows    CE和摩托罗拉IDEN电话。


转贴自:Java组织研究

以下是对选择开发移动应用程序...的回复:
------- 目前此主题没有相关的回复 -------
您可以在下面回复此主题:
回复信息前,请确认您发表的信息符合“中国网络教育网论坛规范条例”。


※文章内容:

用户名:  密码:

注:
1.如果你你还不是中国网络教育网的会员,请在这里免费会员注册
2.如果您要发表的文章包含图片、表格等,您可以把文章发Email给我们,我们会尽快为您发表,谢谢!
网站地图 工作机会 友情链接 联系我们 在线调查 广告服务
地址:北京朝阳区建国路88号现代城A座2604 邮编:100022 
电话:010-85806056\85804383 传真:010-85804384