电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

高可靠性移动应用程序---J2ME工具(1)


发布日期:2021/9/5
 

在不可靠的无线网络中应用程序可靠性已经成为关系移动商业成功的一个中心话题JME(Java 平台微型版)是支持离线模式智能移动客户端的完美平台整合了移动关系数据库的企业JME客户端能够管理在设备上的复杂数据并能在需要时和后台服务器同步在这篇文章中Michael Yuan首先他讨论了高可靠性移动移用应用程序的偶然连接(occasionallyconnected)范例他在这个范例中解释了移动数据库的作用他还用一个JME应用程序阐述了移动数据库应用程序的关键组件最后他评论了主流的JME数据库公司为你在购买所需要的数据库时提供一个指导

目前的无线网络是极不可靠的不可靠的应用程序毁坏了移动商业的核心价值而它又许诺无论何时何地都可以访问到信息实际上总是保持连接的需求正是基于无线应用协议(WAP)的瘦客户移动商业失败的主要原因移动商业需要智能的移用客户端它能够操纵当地的应用程序并且甚至在网络出现临时的不可靠时可以持续的工作(例如离线操作)偶然连接移动应用程序需要高级的移动数据储存和管理工具这样的工具在JME上是容易得到的

在这篇文章中我首先讨论了移动数据库的一般概念和规范我用了一个应用程序例子来阐述JME移动数据库应用程序的重要设计和关键组件我也对现在变化的市场如何正确选择正确的移动数据库提供了建议

设备上的数据存储和管理

对离线操作的首要需求是存储和管理设备自身的应用数据标准的JME仅仅提供有限的数据存储和管理能力在低端的MIDP(移动信息设备描述)电话上我们仅靠记录管理系统record management system(RMS)得到线性的记录储存在基础描述里(或PersonalJava)我们有简单的随机文件应用程序开发者们必须用那些一般工具来组织数据这些工具会对大应用程序导致乏味低效率和错误的倾向

在JSE(Java平台标准版)和JEE(Java平台企业版)的世界中关系数据库代表着数据管理的关键技术大多数开发人员已经非常熟悉通过如JDBC(Java数据库连接)的API访问普通数据库因此轻量级关系数据库是我们对移动数据管理自然的选择

除了提供离线操作模式外设备上数据库ondevice databases还有其他的重要好处

他们能管理用户参数极度的个性化已经作为移动商业的一个主要优点被吹捧

他们能提供一个性能高速缓存器performance cache来减少网络往返回调这样就能大大的增强在目前低速和反应慢的无线网络中应用程序的性能

JDBC可选包

标准JDBC API对高端Java移动设备已经是可以选择利用了PersonalJava运行时常常和可选的JDBCx API捆绑在一起PersonalJava的继承物JME 基础/个性化的描述Foundation/Personal Profile(FP/PP)它没有委托JDBC来访问数据库相反FP/PP设备通过JME JDBC可选包(JDBC OP)使用JDBC x API 的一个富子集JSR Java Specification Request(Java 规范需求)正在发展这个可选包的规范它的草案已在月提交上去JDBC OP除了以下几个特点外支持大多数用于JDBC的公共特性

连接池

ParameterMetaData接口

在CallableStatement interface里为已经存储的程序通过名称来设置参数

SQL 的类型(如StructArrayRefSQLDataSQLInput和SQLOutput接口 )

自定义类型映射(如setTypeMap() 和getTypeMap() 方法)

数据同步

偶然连接应用程序范例的另一个重要特性是数据同步独立的移动数据库被数据包所隔开当我们用强大的后台服务器连接那些孤岛时移动应用程序非常有用已连接上的移动数据库有如下优点

移动客户端常常需要访问企业的基础设施例如移动销售应用程序需要更新库存数据

后端应用程序需要上卷数据和聚集数据来制定智能商业决策或生成正确的报表例如供应链应用程序在决定它应该从供应商那里定购多少货物之前需要得到移动销售人员的聚集数据

后台能共享每个移动终端信息

因此智能客户端不但应该提供离线设备数据管理而且应该当网络可用时提供后台数据库的数据同步后台数据库当作简单移动设备管理的一个内容储存库是同步解决方案的额外收益

理论上应用程序开发者能操纵整个同步逻辑然而开发一个优化的安全的和可扩展的同步解决方案需要非常专业的技能移动数据库产品同其附带的同步工具和API一起赶走了开发人员的痛苦

什么是SyncML?

SyncML是一个流行的应用层同步协议除了包括像JME这样的通用客户应用平台移动设备通常还预装一些智能应用程序例如在智能电话或PDA上包括有日历地址本和联系表(个人信息管理 personal information management 或PIM应用程序)这些应用程序通常能够通过设备软件供应商所提供的协议与桌面PC或其他中央数据储存库进行数据同步协议间的不兼容造成用户的许多问题例如在Pocket PC上的Mac 和Linux两平台进行同步是非常困难的如果一个人拥有多个移动设备那他必须安装多个驱动程序而这些驱动程序是存在潜在沖突的用户需要一个标准的同步协议它允许任何设备在不需要专门驱动程序条件下与任何后端应用程序进行同步

SyncML是一个标准的XML数据格式它定义语法描述简单PIM数据例如vCard和vCalendarSyncML能访问数据库驱动的企业后端信息系统例如IBM WebSphere Everyplace Access提供SyncML客户端访问Lotus Notes和Microsoft Exchange servers像IBM DB和Oraclei Database这样重要的企业数据库已经建立了对SyncML的支持由于SyncML只是在PIM类型应用程序上发挥作用它还没有强大到足以和通用关系数据库同步的地步因此本文没有集中在SyncML上

上一篇:漫谈镜像(备份)网站的几种有效方法

下一篇:where子句在编写过程中需要注意的问题