(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf_第1页
(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf_第2页
(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf_第3页
(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf_第4页
(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机应用技术专业论文)基于java+me的无线移动应用系统研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 在信息社会中手机及其它无线设备越来多地走进人们的生活中。随着j a v a 技术向无线领域的逐步深入,基于j a v am e 平台的手机应用系统解决方案以其 小巧便捷的特性的和无可替代的跨平台优势,逐渐成为移动应用的主导。本文 从理论和实践出发,讨论如何将企业传统的信息系统向移动应用系统拓展、延 伸,实现信息系统的增值服务,提高企业的运作效率,提升企业的形象。 本文详细分析了j a v am e 平台的体系结构、通用连接框架、记录管理系统、 安全模型以及移动信息设备简表m i d p 程序的开发。目前,大量的w e b 应用服 务器端程序使用j a v a 技术开发,本文通过一个实例演示了j a v am e 客户端与w e b 应用程序的结合。具体涉及了w e b 应用程序的相关开发技术、x m l 相关技术、 m i d p 程序的界面开发、客户端与服务器端的交互、通过j d b c 访问数据库以及 数据的传输与处理等。同时简要介绍了u m l 。在这一部分,通过实例重点分析 了客户端和服务器端是如何通过x m l 来传输和处理数据的。 w e b 服务是当前非常流行的技术。本文同样也通过一个实例演示了j a v am e 与w e b 服务的结合。涉及了w e b 服务的概念、体系结构、标准和协议,j a x w s 2 0 ,j s r1 7 2 规范以及数据源等。在实例中,重点讲解了如何通过新的规范 j a x w s 来建立w e b 服务以及如何通过j s r17 2 规范在j a v am e 客户端调用w e b 服务。 本文通过x m l 实现了j a v am e 与w e b 应用的连接,特别是利用了j a x - w s 2 0 规范实现了w e b 服务,并利用j s r1 7 2 规范成功地实现了对w e b 服务的调用, 目前类似这样的研究还较少。对文中给出的两个系统实例的开发环境,运行配 置等,本文都进行了相关讲解,并在s o n ye r i c s s o nk 5 1 0 c 手机上进行了真机测 试,运行情况良好。事实证明,j a v am e 完全可以与w e b 应用和w e b 服务实现 很好的连接。 关键字:m i d p ,x m l ,j a x w s ,j s r1 7 2 ,w e b 服务 a b s t r a c t t h ew i r e l e s sa n dm o b i l ed e v i c e sb e c o m em o r ea n dm o r ep o p u l a rw i t ht h e o r d i n a r yp e o p l ei nt h ei n f o r m a t i o ns o c i e t y a sj a v ah a sb e e nw i d e l yu s e di nt h e w i r e l e s sf i e l d ,t h em o b i l ea p p l i c a t i o ns y s t e r nb a s e do nt h ej a v am e p l a t f o r mh a s g r a d u a l l yd o m i n a t e dt h ef i e l do fm o b i l ea p p l i c a t i o n sb e c a u s eo fi t sc o n v e n i e n t p r o p e r t i e sa n di t si r r e p l a c e a b l et r a n s p l a t f o r ma d v a n t a g e t h i st h e s i sd i s c u s s e sh o wt o e x p a n dt r a d i t i o n a li n f o r m a t i o ns y s t e m st om o b i l ea p p l i c a t i o ns y s t e m sb o t hi nt h e o r y a n dp r a c t i c e ,s oa st oi n c r e a s et h ev a l u ei ne n t e r p r i s es e r v i c e s ,i m p r o v et h er u n n i n g e f f i c i e n c y , a n dp r o m o t et h ei m a g eo ft h ee n t e r p r i s e 砀ea r c h i t e c t u r eo ft h ej a v am ep l a t f o r n l 。g e n c r i cc o n n e c t i o nf r a m e ( g c f ) , r e c o r dm a n a g e m e n ts y s t e m ( r m s ) ,s e c u r i t ym o d e la n dt h ed e v e l o p m e n to fm i d l e t s a r ed i s c u s s e di nt h i st h e s i s a tp r e s e n t ,m a n yw e ba p p l i c a t i o n sa r eb u i l ti nj a v a ;t h i s t h e s i sp r e s e n t st h ei n t e g r a t i o no fj a v am ea n dw 曲印p l i c a t i o nb ya ni n s t a n c e t h e w e ba p p l i c a t i o nr e l a t e dt e c h n o l o g y , x m l ,t h ei n t e r f a c e d e s i g no fm i d l e t s ,t h e c o n t a c tb e t w e e nc l i e n ta n ds e r v e r , t h ea c c e s st ot h ed a t a b a s eb yj d b c ,t h e t r a n s m i s s i o na n dp r o c e s s i n go fd a t aa r ei n t r o d u c e d t h i sp a r tw i t he m p h a s i se x p o u n d s h o wt ot r a n s f e ra n dp r o c e s sd a t ab e t w e e nc l i e n ta n ds e r v e rb yx m l w 曲s e r v i c e si sav e r yf a s h i o n a b l et e c h n o l o g ya tp r e s e n t t h i st h e s i sa l s og i v e s a ne x a m p l ed e m o n s t r a t i n gt h ec o a l e s c e n to fj a v am ea n dw e bs e r v i c e s t h ec o n c e p t a r c h i t e c t u r e ,s t a n d a r d sa n dp r o t o c o l so f 飞渺s e r v i c e s ,j a x w s2 o j s r17 2a n d d a h as o u r c ea r et o l d 。i nt h ei n s t a n c e i tm a i n l yd e s c r i b e sh o wt ob u i l dw 曲s e r v i c e s u s i n gt h en e w s t a n d a r dj a x w sa n dh o wt oe m p l o yt h ew e bs e r v i c e si nt h ej a v am e c l i e n tb yj s r1 7 2 t h ec r e a t i v e p o i n t s i nt h et h e s i sa r ea sf o l l o w i n g :i m p l e m e n t a t i n gc o n n e c t b e t w e e nt h ej a v am ec l i e n ta n dw 曲a p p l i c a t i o nb yx m l ,b u i l d i n gw e bs e r v i c e s w i mj a x w s2 0a n da c c e s s i n gt ow 曲s e r v i c e sw i lj s r17 2 t h ed e v e l o p m e n t e n v i r o n m e n ta n dr u n n i n gc o n f i g u r a t i o no ft h et w od e m oa p p l i c a t i o n sa r ed i s c u s s e di n t h et h e s i s t h ea p p l i c a f i o n sh a v ea l s ob e e nt e s t e di nt h es o n ye r i c s s o nk 51o cm o b i l e p h o n ea n dr u n sw e l li ni t f a c t sh a v ep r o v e dt h a tj a v am ec l i e n tc a nr u nw e l lw i m 腑6a p p l i c a t i o na n d 臃6s e r v i c e s 。 k e yw o r d s :m i d p , x m l ,j a x - w s ,j s r17 2 ,w e bs e r v i c e s i i 此页若属实,请申请人及导师签名。 独创性声明 本人声明,所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得武汉理工大学或其它教育 机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名:j l 立一日期j 丛删 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部内 容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 研究生签名 注:请将此 童童导师签名:铆z , 占明装订在论文的目录前。 日期删 武汉理工大学硕士学位论文 第1 章引言 1 1 无线移动应用系统简介 有线信息访问应用程序要求用户必须在特定时刻位于特定地点。这样的模 式并不适合当今那些事务繁忙、经常处于奔波之中的客户和商业人士的需求。 移动用户需要的是就地迅速找到特定信息的能力。此外他们还需要对多种不同 商务及个人事务同时进行多任务处理,从而最大限度利用旅途中的空闲时间。 移动应用程序支持随时随地访问高度个性化的信息。切断有线介质的束缚 之后,信息可以自由地流入生活的方方面面。与自由信息获取关联的商机将无 可限量。 高度的个性化:研究表明,在携带最多的个人物品中,手机仅仅位列钥匙 和钱包之后。移动设备的私用本质要求开发人员开发能够高度自定义的应用程 序,以满足用户的个性化要求。自定义首选项使设备应用程序能够在用户最低 限度干预的情况下对相关信息快速定位。 随时随地获取信息:联网设备的普及使我们在工作、购物和娱乐时不再受 空间和时间的约束。用户可以在车中等待孩子,同时在本地的杂货店在线购物, 并通过手机接收所有重要的市场动态。这种技术带来了生活方式的根本性改变, 因为我们可以围绕高优先级的任务而组织时间,而不必受物理上的限制【l 】。 1 2 国内外研究现状分析 当前,在移动通信领域比较有代表性的服务有无线应用协议( w i r e l e s s a p p l i c a t i o np r o t o c o l ,w a p ) 以及i - m o d e z jp j 。w a p 与i - m o d e 采用微浏览器技 术。然而事实证明,微浏览器架构过分依赖在服务器和手机终端之间传递数据 的网络,如果网络出现故障或暂时瘫痪,会不可避免地对移动互联产生毁灭性 影响,而且微浏览器架构所不具备的高交互性和安全性也成为其走向企业领域 的软肋。对于大多数用户而言,基于微浏览器技术的业务成本也过于高昂,在 当前网络速度还不够快的背景下,这种完全依赖网络传输的技术已经被证明不 武汉理工大学硕士学位论文 能担当向手机传递数据的重任。并且,w a p 方式采用b r o w s e r s e r v e r 的方式访 问i n t e m e t ,无线通信设备要通过w a p 网关才能访问i n t e m e t ,并且只能访问 w m l ,而非主流的h t m l ,而要把所有的h t m l 转换成w m l 无疑是一项浩大 的工作。同时现有的w a p 解决方案不能显示生动的图形,不能访问本地存储区, 而且要求设备的实时在线,这无疑增加了网络的开销和负担,影响了速度,使 无线i n t e m e t 应用受到了很大限制。 而j a v am e 则正是针对解决这些问题而面世的。j a v am e 定义移动设备可以 从无线网络上下载应用程序,并离线执行。其与生俱来的平台无关性使得软件 开发商可以容易的开发应用程序,并且方便的部署到移动设备中【4 】。同时j a v am e 提供了高级i n t e r n e t 协议,使移动电话能直接访问已有i n t e m e t 的全部信息f 5 】。 此外,还能访问本地存储区,提供最高效率的在线操作;同时支持脱机操作, 可在必要的时候与服务器交换数据而无须一直在线。 目前,已正式大规模提供j a v am e 增值服务的移动通信运行商包括:日本 的n t td o c o m o ( p d c ) ,j - p h o n e ( p d c ) ,k d d i ( c d m a ) ,韩国的l g 电信( c d m a ) , 美国的n e x t e lc o m m u n i c a t i o n s ( i d e n ) ,s p r i n tp c s ( c d m a ) ,香港的和信( g s m ) , c s l ( g s m ) ,荷兰的tm o b i l e ( g s m ) 以及西班牙的t e l e p h o n i c a ( g s m ) 等。 在大陆,中国联通筹划实施的u n i 品牌综合性媒体门户将在手机上提供丰富 的资讯和服务。内容分娱乐、生活、工作三大类。娱乐、生活主要面向时尚、 精英人群,工作主要是商务及工具类应用【6 】。北京联通推出的“掌上股市”业务为 用户提供各种走势图、k 线图,用户可以实时查询账户资金和股票,并执行买入、 卖出、撤单等交易。中国移动无线j a v a 业务( 百宝箱服务) 是一种新的移动数 据业务的增值服务。用户使用支持j a v a 功能的手机终端,通过g p r s 方式接入 中国移动无线j a 、,a 服务平台,能方便地享受类似于i n t e m e t 上的各种服务,如 下载各种游戏、动漫画、小说等,也可进行各种在线应用,如联网游戏、收发 邮件、证券炒股、信息查询等。 j a v am e 的企业应用决不仅仅是单个平台的应用,它包括了许多技术的创新 及应用。端到端无线企业j a v a 技术的发展与j a v am e ,j a v ae e 以及数据的传输 与安全等等技术密切相关。目前,由于j a v a 平台的开放性,缺少统一的标准, 相当大的一部分解决方案都运行于特定的平台,难以应用到普通平台之上;同 时绝大多数的解决方案由于采用自己设计的后台,在处理数据传输方面都采用 简单的请求响应二进制数据格式,这种格式缺乏自我描述,客户端和服务器必 2 武汉理工大学硕士学位论文 须预先知道数据的格式,才能完成数据交换;而对于传输数据的安全性问题, 也在进一步的探讨完善阶段。 1 3 论文研究内容与意义 本文在总结分析前人研究成果的基础上,将j a v am e 与w e b 应用和w e b s e r v i c e s 结合起来,对移动应用系统进行了研究和实现。同时,本论文对w e b s e r v i c e s 的新开发技术j a x - w s 进行了讨论并实现,希望能对w e bs e r v i c e s 有一 定的推广作用,最终能够更好地推动移动应用的发展。 论文的研究内容包括移动应用系统的发展趋势和国内外研究现状,j a v am e 的体系结构和开发技术,w e b 应用程序的相关技术以及w e bs e r v i c e s 的开发和 访问技术。具体内容安排如下: 第l 章,从整体上介绍移动应用系统,并分析国内外研究现状以及研究的 意义。 第2 章,介绍j a v am e 在整个j a v a 平台中的位置,j a v am e 的体系结构, 通用连接框架,记录管理系统以及如何进行m i d p 程序的开发。同时详细分析 了j a v am e 的安全体系结构。 第3 章,首先介绍了w e b 应用程序的相关技术,然后介绍x m l 的概念、 特点、相关技术、解析器,并讨论了x m l 的数字签名技术。接着阐述了j a v am e 与x m l 结合的好处。接下来,简要地介绍了u m l 。最后给出了一个j a v am e 与w e b 应用通过x m l 结合的实例。 第4 章,首先介绍w e bs e r v i c e s 的概念、体系结构、标准和协议,然后详细 介绍了开发w e bs e r v i c e s 的新规范:j a x - w s2 0 。接着介绍了如何通过j s r17 2 规范实现j a v am e 客户端对w e bs e r v i c e s 的调用。最后给出了一个j a v am e 客 户端调用w 曲s e r v i c e s 的实例。 第5 章,对全文作出总结和展望。 3 武汉理工大学硕士学位论文 第2 章相关技术介绍 随着手机的普及,可编程手机的应用越来越广泛。虽然存在着各种各样的 手机平台,但在可编程手机中,基于j a v a 的手机是最为通行的。事实上,j a v a 已经为差不多所有的手机制造商所接受,成为手机应用与服务的标准【7 1 。用户使 用支持j a v a 功能的移动通讯设备,通过无线j a v a 服务平台,能方便地享受类似 于i n t e m e t 上的各种服务。用j a v am e 部署较为复杂并需要智能处理的客户端是 最佳的选择。 2 1j a v am e 在j a v a 平台中的位置 j a v a 技术是一系列产品的集合,在长期的发展过程中,j a v a 技术逐渐发展 为以下四个平台:j a v as e 、j a v ae e 、j a v am e 和j a v ac a r d ,如图2 1 所示【8 】【9 1 。 涉及个人计算机企业计算机 领域 和服务器和服务器 j a v a 平台 j a v a 平台 标准版 j a v as e 虚拟机 j a v a 平台 企业版 j a v a e e 虚拟机 移动电话 等嵌入式 智能卡 设备 j a v a 平台 微璎版 j a v a m e 虚拟机 图2 - 1j a v a 技术的体系结构 j a v as e 是j a v as t a n d a r de d i t i o n 的简称。该版本实现了所有j a v a 标准规范 中所定义的核心类库,支持所有的j a v a 基本类型。j a v as e 定位在桌面环境和两 层c s ( c l i e n t s e r v e r ) 程序的应用上。j a v ae e 是j a v ae n t e r p r i s ee d i t i o n 的简称。该 版本除了支持所有的j a v as e 核心类库外,还增加了许多商业应用的扩充类库, 同样支持所有的j a v a 基本类型,定位在三层b s ( b r o w s e r - s e r v e r ) 程序的应用上。 j a v ac a r d ( 有时也叫s m a r tc a r d ) 主要定位于各种智能卡的开发,它支持j a v as e 标准核心类库的一个比j a v am e 更小的子集,也增加了一些特有的扩充类库【1 0 】。 j a v am e 是j a v am i c r oe d i t i o n 的简称。它为运行在嵌入式消费类电子产品的设 4 武汉理工大学硕士学位论文 备,如移动电话、p d a 、游戏终端之上的应用程序提供了一个健壮的、灵活的 环境。与j a v as e ,j a v ae e 和j a v ac a r d 一样,j a v am e 同样包含了一个小型的 虚拟机和一系列的j a v a a p i 。j a v am e 还提供了灵活的图形用户界面、健壮的安 全模型、广泛的联网协议支州1 。 2 2j a v am e 的体系结构 j a v am e 主要适用于小型嵌入式设备,这些设备与p c 或是服务器设备相比 没有统一的硬件标准、外观与操作方式,其功用也是千差万别的【1 2 1 ,一种规范 很难将它们统一起来。j a v am e 平台由多种配置( c o n f i g u r a t i o n ) 、简表( p r o f i l e ) 和 n - j 龅( o p t i o n a lp a c k a g e ) 组成【1 3 】,如图2 2 所示。 可选包 简表 配置 j a v a 虚拟机 宿主操作系统 图2 2j a v a m e 平台的体系结构 宿主操作系统( h o s to p e r a t i n gs y s t e m ) 位于j a v am e 运行环境的最底层,它 负责管理和配置手持设备的所有硬件,可以是l i n u x ,s y m b i a n ,w i n d o w sc e , p a l m o s 等,这充分体现了j a v a 语言跨平台的特性。配置由j a v a 虚拟机和一系 列的a p i 集合组成,为某一范围内的嵌入式设备提供基本的功能,这些设备通 常在硬件和软件上具有类似的特性。目前,j a v am e 平台主要有两个配置:连接 设备配置( c o n n e c t e dd e v i c ec o n f i g u r a t i o n ,c d c ) 和连接受限设备配置( c o n n e c t e d l i m i t e dd e v i c ec o n f i g u r a t i o n ,c l d c ) 。简表位于配置之上,为运行目标设备提 供高层的a p i ,例如,应用程序模型和图形用户界面等。目前,c l d c 上采用最 广泛的简表是移动信息设备简表( m o b i l ei n f o r m a t i o nd e v i c ep r o f i l e ,m i d p ) 。基 于c l d c 和m i d p 的j a v am e 平台主要面对的目标设备是移动电话。j a v am e 平台可以通过添加可选包进行扩展,可选包是针对特殊的技术实现,因此它定 位的是特定范围的设备,而不适合作为一项特性定义在m i d p 中。随着移动终 5 武汉理工大学硕士学位论文 端设备内存和处理能力的提高越来越多的可选包被添加到具体的j a v am e 平台 上。 2 2 1j a v am e 虚拟机 j a v a 程序是以边解释边执行的方式运行的,所有的j a v a 程序都会被编译成 二进制代码,并运行在j a v a 虚拟机上。c l d c 和c d c 配置各自定义了一组需要 j a v a 虚拟机支持的功能,因此每种配置都需要自己的j a v a 虚拟机。由于支持的 功能比较少,c l d c 虚拟机比c d c 需要的虚拟机小得多。c l d c 使用的虚拟机 称为k v m ,c d c 使用的虚拟机称为c v m 。k v m 和c v m 均可被看作是一种j a v a 虚拟机,是j v m 的子集,在功能上都是j v m 的缩减版 1 2 】。 2 2 2j a v am e 配置 j a v am e 要支持的硬件平台有很大差异,为了满足不同硬件的开发要求,配 置对不同级别的硬件在所使用的j v m 和基础a p i 集合方面做了规定。目前,j a v a m e 平台主要包括两个配置【1 4 】:c l d c 和c d c 。 连接限制设备配置( c l d c ) 与k v m 一起用于内存有限的1 6 位或3 2 位设备。 这是用于开发小型j a v am e 应用程序的配置( 虚拟机) 。c l d c 同时还是用于开发 绘图工具应用程序的配置。p a l m 电脑便是一个运行小应用程序的小型无线设备 的示例。 连接设备配置( c d c ) 与c 虚拟机( c 田一起使用,用于要求内存超过2 m b 的3 2 位体系结构。电视机顶盒便是这类设备的一个示例。 图2 3 描述了j a v as e 、c d c 和c l d c 之间的关系。从图中可以看出,c d c 是加上了一些额外类的j a v as e 的子集,c l d c 是c d c 的子集。 图2 - 3j a v a s e 、c d c 和c l d c 之间的关系 6 武汉理工大学硕士学位论文 配置的特性: 仅定义使用到的最小集合的类,保持最少的通用特性,但要使用大量的 设备,对于不同领域或行业的功能特性的定义由简表决定。 不能定义可选特性,目的是保证程序的可移植性。如果包含过多的可选 特性,那么将形成程序员的任意使用,最终造成程序的不可移植。 继承大部分j a v as e 中的类和包。 c l d c 由两部分组成,分别是为应用程序提供的最小j a v a 语言类库和适合 在资源受限设备上的虚拟机。c l d c 为上层简表提供如下支持:j a v a 语言规范的 核心特性;j a v a 虚拟机规范的核心特性;j a v a 核心类库,包括j a v a 1 a n g * ,j a v a u t i l 木 和j a v a i o 奉;通用连接框架;安全特性;国际化支持【1 5 】。 目前,与c l d c 相关的有两个c o n f i g u r a t i o n ,分别是c l d c1 0 ( j s r 3 0 ) 和 c l d c 1 1 ( j s r l 3 9 ) 。c l d c1 1 规范最终定稿于2 0 0 3 年3 月4 日,其对设备的最 低要求如下所示: 最低1 9 2 k b 的内存供j a v a 平台使用。其中,1 6 0 k b 的非易失性内存供 虚拟机和c l d c 类库使用;至少3 2 k b 易失性内存供j a v a 运行时使用。 一个1 6 位或3 2 位的处理器。 低耗电量,通常使用电池。 能够连接到某些类型网络,网络连接通常是无线,可能间歇的以及带宽 受限( 通常9 6 0 0 b p s 或更低) 的。 c l d c1 1 规范和c l d c1 0 规范相比并没有做根本性的改变,保持了与 c l d c1 0 的兼容,最大的变化莫过于增加了对浮点数的支持。 2 2 3j a v am e 简表 简表为相同消费电子设备的不同生产厂商提供了标准化的j a v a 类库。简表 的实现是j a v a 应用程序接口的一个集合,用于适应被定义配置的应用程序接口 提供的服务。 移动信息设备简表( m i d p ) 是为移动电话和入门级p d a 设计的。它为移动应 用程序提供了所需的全部核心功能。信息模块简表( i n f o r m a t i o nm o d u l ep r o f i l e , i m p ) 是m i d p1 0 的严格子集,它的目标设备是无显示能力和用户输入能力的终 端。基础简表( f o u n d a t i o np r o f i l e ,f p ) 位于c d c 基础之上,与c d c 连接最为紧密。 它为运行环境提供了联网能力,但是它没有包含图形用户界面工具。个人简表 7 武汉理工大学硕十学位论文 ( p e r s o n a lp r o f i l e ,p p ) 是为那些需要完备图形用户界面,以及a p p l e t 支持的设备 设计的。个人基础简表( p e r s o n a lb a s i cp r o f i l e 。p b p ) 是个人简表的子集,为联网设 备提供了应用程序环境。通常它的目标设备支持基本的图形表达能力,有些特 殊的应用程序还可能需要特定的图形处理工具,如电视机顶盒和车载娱乐系统。 个人基础简表和个人简表都是以c d c 和f p 为基础的。 m i d p 位于c l d c 基础之上,为开发者提供了应用程序模型、图形用户界面、 数据持久性存储等功能。m i d p 目标设备上应用程序的体系结构如图2 4 所示【l 6 】 【l7 1 。 图2 4m i d p 目标设备上应用程序的体系结构 从图中可以看出,整个软件环境由三部分组成:m i d p 兼容的应用程序、o e m ( 原始设备制造商) 应用程序和本地应用程序。m i d p 应用程序,是仅使用m i d p 和c l d c 规范定义的a p i 的应用程序。o e m 应用程序通常使用o e m 自己提供 的类,这种程序一般不具备可移植性。本地应用程序一般由汇编语言或者c c + + 语言开发,它们可以使用更为强大的接口来访问操作系统的资源和服务。 m i d p1 0 版本的功能包括应用程序的下载、网络连接和传输、数据库存储、 计时器和用户界面。2 0 版本扩展了以下功能:应用下载的计费,网络安全传输、 数字签名、域的安全模式、注册和音频处理。2 1 版本主要增加了下列新特性: c a n v a s 的修改、应用描述符的修改、对网络安全的支持、必须实现基于时间的 推注册等等。目前大多数移动手机都支持m i d p2 0 的简表,m i d p 功能结构图 如图2 5 所示【博j 。 8 武汉理工大学硕士学位论文 游戏组件用户接口组件媒体组件 牛争牟 应用程序管理 令 端到端的安全机制 , 土= | ! ! 审丫 2 2 4j a v am e 可选包 图2 5m i d p 功能结构图 在对c l d c 和m i d p 规范的制定中,需要综合考虑绝大多数的设备配置情 况,因此,对于一些配置较高的设备而言,c l d c 和m i d p 规范中的规范就有些 不够。基于这种情况,j c p 制定了o p t i o n a lp a c k a g e 规范。在配置和相关的简表 的基础上组合不同的可选包可以对j a v am e 平台进行扩展。可选包通常是为了 满足特殊的市场需求,如蓝牙通信、无线消息服务和w e b 服务。可选包是模块 化的,因此设备制造商可以有选择的把它们添加到自己的j a v a 平台,这将大大 丰富设备的特性。下面介绍一些常用的、功能强大的可选包【1 0 】【l2 1 。 w i r e l e s sm e s s a g i n g a p i ( j s r1 2 0 ) :支持无线消息以平台无关的访问方式 访问无线资源,主要用于提供消息服务,如短信服务、蜂窝网广播服务 等。 m o b i l em e d i aa p i ( j s r1 3 5 ) :提供了在小型设备上处理音频和视频等多 媒体的能力,包括播放、录制等。 j a v a a p i sf o rb l u e t o o t h ( j s r8 2 ) - 提供了对蓝牙通信的支持。 w e bs e r v i c e s s p e c i f i c a t i o n ( j s r l7 2 ) :主要用于实现移动设备对w e b s e r v i c e s 的访问,也可以用于对x m l 的解析。 m o b i l e3 dg r a p h i c sa p i ( j s r1 8 4 ) :主要用于c l d c1 1 平台,支持开发 3 d 图形程序,特别是j a v a3 d 游戏。 2 3 通用连接框架( g c f ) 由于m i d p 面向的是不同底层网络协议的设备,并且与有线网络相比,无 线网络具有带宽小,延时大和不稳定等特点。为了更好地适应移动网络,在c l d c y 9 武汉理工大学硕士学位论文 中提出了通用连接框架( g e n e t i cc o n n e c t i o nf r a m e ,g c f ) 的概念。框架的设计者 通过下面三条原则实现了联网操作的通用性: 1 ) 基于接口设计; 2 ) 提供一个工厂类c o n n e c t o r ,可以方便的创建c o n n e c t i o n ; 3 ) 通过标准u r l ( 统一资源定位器) 来指示c o n n e c t i o n 的创建类型。 通用连接框架的核心是c o n n e c t o r 类,它的o p e n ( ) 方法接受一个s t r i n g 类型 的参数,这个参数标志了请求的连接类型和连接端点。u r l 参数格式如下: s c h e m e :u s e r :p a s s w o r d h o s t :p o r t u r l p a t h ;p a r a m e t e r s 其中s c h e m e 代表了访问方法和协议,o p e n ( ) 方法根据s c h e m e 的内容来判断 c o n n e c t i o n 的类型。s c h e m e 可以是h t t p ,h t t p s ,s o c k e t ,d a t a 掣a m ,f i l e 等。u s e r 和p a s s w o r d 都是可选参数,h o s t 代表连接端的地址,p o r t 代表了端口号;u r l - p a t h 指定了访问资源,p a r a m e t e r 是u r l p a t h 可选参数。 下面以h t t p 协议为例来说明如何使用m i d p 实现该连接。 h t t p 协议是超文本传输协议的简称,支持客户端h h 务器模式,采用无连 接和无状态的工作方式。h , l - - l q 】连接可以通过c l d c 中定义的通用连接框架完 成,也可以通过m i d p 扩展的h t t p c o n n e c t i o n 接口完成,该接口继承自 c o n t e n t c o n n e c t i o n 接口,它可以处理h t t p 协议中的u r l 、请求头、响应头等 实体。下面5 个方面说明h t t p 连接的使用【1 8 】。 ( 1 ) 创建m 盯p 连接 同其他连接一样,使用c o n n e c t o r 的o p e n 方法可以创建并打开一个h t 开 连接,典型代码如下: h t t p c o n n e c t i o nc = ( h t t p c o n n e c t i o n ) c o n n e c t o r o p e n ( u r l ) ;通过u r l 地址创 建h t t p 连接 ( 2 ) 处理u r l 方法g e t u r l 可以获得整个u r l 字符串,包括协议类型、主机名称、端口 号、资源路径和查询选项,其中每个部分可以通过专用的方法获得。 ( 3 ) 处理消息头 在处理消息头的过程中,我们关心某个选项的取值情况,h t t p c o n n e c t i o n 提 供了三种获取方式:专用方式、指定选项名方式和指定索引号方式。 ( 4 ) 处理消息请求 请求消息的请求行中包含g e t 、h e a d 和p o s t 三种请求,g e t r e q u e s t m e t h o d 1 0 武汉理工大学硕士学位论文 方法可以获得消息的请求类型。s e t r e q u e s t m e t h o d 方法可以设置消息的请求类 型。g e t 方法用于获得请求消息中指定的数据;h e a d 方法用于返回实体头, 而不包括实体本身;p o s t 方法请求服务器接受所指定的文档作为对所标识的 u r j 的新的从属实体。 ( 5 ) 处理消息响应 g e t r e s p o n s e c o d e 方法可以获得h t t p 的响应状态码,该状态码表示了响应 消息的类型。g e t r e s p o n s e m e s s a g e 获得相应消息内容。 2 4 记录管理系统 m i d p 为m i d i e t 提供了持久存储和检索数据的机制,这个持久储存机制模 仿了一个简单的面向记录的数据库,叫做记录管理系统( r e c o r dm a n a g e m e n t s y s t e m ,r m s ) 。记录管理系统主要管理记录储存( r e c o r ds t o r e ) 。记录存储由一系 列记录组成,类似于关系型数据库中的表。它持久地保持了一个m i d i e t 的多个 存取调用。 目前的m i d p 版本并不提供文件管理功能,系统只提供向记录存储系统写 入数据的功能。数据写入记录存储后,记录将持久保存并支持跨多个m i d i e t 的 请求。在系统平台的这个常规应用期内,包括重启、更换电池等情况,m i d l e t 的记录存储都由系统平台负责维护,将尽可能维持记录的完整性。 存储生成的位置是依赖于平台,m i d i e t 并不能控制。记录存储是通过唯一 的m i d l e ts u i t e 名字加上记录存储的名字来保持其命名的唯一性。记录存储的名 字是大小写敏感的,可以由最多3 2 个u n i c o d e 字符组成。在r m s 的类库中没 有提供锁定操作。记录存储的实现确保所有单独的记录存储操作是原子的、同 步的和序列化的,所以在多个访问操作时不会带来问题。但是当m i d i e t 使用多 个线程访问一个记录存储时,同步访问是m i d l e t 自己负责的。 m i d p2 1 规范规定,在内存足够的情况下,每个m i d l e ts u i t e 的r m s 至少 保证6 4 k b 的存储空间,每个m i d i e ts u i t e 至少可以创建1 0 个独立的记录存储【l o 】。 记录存储器是一个存储记录的容器。当我们要保持持久数据时,首先要建 立一个记录存储器,然后将数据以记录的形式添加到记录存储器中完成存储。 记录存储器可以在同一个m i d l e ts u i t e 中的多个m i d i e t 之间共享,但不能在不 同的m i d l e ts u i t e 之间共享,如图2 6 所示【蝎】。 武汉理工大学硕士学位论文 图2 6 记录存储器访问示意图 2 5j a v am e 安全体系结构 2 0 0 6 年3 月,一款名为r e d b r o w s e r a 的俄罗斯手机病毒向更多手机用户发 出红色警戒,r e d b r o w s e r a 是基于j a v am e 开发的m i d l e t 1 9 1 。作为第一款基于 j a v am e 技术的手机病毒,它的意义就如第一款基于s y m b i a n 的c a b i r 病毒一样, 象征的是一个可能的j a v am e 病毒层出不穷的时代的到来。所以,对j a v am e 安全体系结构的研究意义重大。 j a v am e 的安全模式分为三个不同的级另i t 2 0 】【2 l 】: 低级安全。语言本身的安全以及虚拟机安全,它保证运行在虚拟机上的 j a v a 应用遵循j a v a 语言的语义,确保非良型或包含恶意代码的类文件 不损坏目标设备。低级安全在c l d c 中定义。 应用级安全。应用级安全意味着运行于设备上的j a v a 应用只能访问该 设备和该j a v a 应用环境许可的库、系统资源等。应用级安全在c l d c 和m i d p 中都有定义。 端到端安全。端到端安全保证由设备发起的任何事务在整个传输路径, 从设备到为该事务提供服务的实体上受到保护。端到端安全在m i d p 中 定义【2 2 1 。 2 5 1 低级安全 在移动信息设备中,j a v a 虚拟机的一个关键要求就是底层虚拟机的安全性。 一个运行在虚拟机之上的应用,决不能对所在设备或者虚拟机本身造成伤害。 在一个标准的j a v a 虚拟机实现里,这种限制是通过类文件检查器来保证的。一 1 2 武汉理工大学硕士学位论文 般来讲,类文件检查器的角色是保证加载进虚拟机中的类文件不能以虚拟机允 许范围之外的方式执行【2 3 1 。类文件检查器的操作有两个阶段,如图2 7 所示【8 1 。 图2 7c l d c k v m 中的类文件验证 1 ) 预检查。类文件必须通过一个预检查工具。这个工具向j a v a 类文件中 插入一些特定的属性用以加速运行时的检查。经过预检查后的类文件一 般比原始类文件大5 - - 1 0 。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论