毕业设计(论文)-基于RFID的景点导览系统设计.doc_第1页
毕业设计(论文)-基于RFID的景点导览系统设计.doc_第2页
毕业设计(论文)-基于RFID的景点导览系统设计.doc_第3页
毕业设计(论文)-基于RFID的景点导览系统设计.doc_第4页
毕业设计(论文)-基于RFID的景点导览系统设计.doc_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

西安理工大学毕业设计 论文 题题 目目 基基于于 R RF FI ID D 的的景景点点导导览览系系统统 专专 业业 软软件件工工程程 年年 级级 软软 件件 0 05 51 1 学学 号号 学学 生生 指指导导教教师师 完完成成时时间间 唐文轩 基于 RFID 的景点导览系统 2 摘 要 随着移动设备普及和无线通信技术的迅猛发展 无线射频识别技术应 用的范围越来越广 本文从现实需求出发 设计一个基于 RFID 的景点导 览系统 J2ME JAVA 2 MICRO EDITION 是 JAVA 语言三大平台之一 它主要针 对资源受限设备进行应用程序的开发 它将 JAVA 语言的与平台无关的特 性移植到小型电子设备上 允许移动无线设备之间共享应用程序 J2EE JAVA2 平台企业版 JAVA 2 PLATFORM ENTERPRISE EDITION 是一套全然 不同于传统应用开发的技术架构 包含许多组件 主要可简化且规范应用 系统的开发与部署 进而提高可移植性 安全与再用价值 本文采用这两 种技术来进行基于 RFID 的景点导览系统的设计与开发 论文首先介绍了 J2ME 技术的一些基本概念及体系结构 MIDP 的基本 编程方法 然后介绍了 J2ME 的技术以及 STRUTS 的相关知识 接着 重点的介绍了基于 RFID 的景点导览系统的设计与开发过程 根据总体设计 提出了系统设计模型 系统分为服务器端和客户端 服务 器端由一系列 STRUTS 框架开发实现 客户端利用开发 MIDLET 实现 服务 器端有两种用户 管理员和游客 管理员功能主要是对景点信息的修改 标签的管理 景点客流量的统计 游客的旅游日志管理以及客户端服务信 息管理功能 客户端功能主要是查询定位功能 地图展示 地图展示 行 程规划以及随身贴士功能 本文重点介绍了这些功能的实现与设计 然后对系统设计与编码过程中所遇到的重点难点作了介绍 最后 对 本文工作做出了总结 并提出了进一步工作的设想 关键词 RFID J2ME J2EE STRUTS 框架 2009 届网络工程专业毕业设计 论文 3 Abstract Along with mobile equipment popular and wireless communication technology rapid development the wireless radio frequency recognition technology application s scope is getting more and more broad This article embarks from the realistic demand designs one based on the RFID scenic spot survey system J2ME JAVA 2 MICRO EDITION is JAVA language one of three big platforms it mainly aims at the resources to limit the equipment to carry on the application procedure the development It the characteristic which has nothing to do with the platform transplants the JAVA language to the miniaturized electronics on between the permission migration radio equipment rep shares the application procedure J2EE the JAVA2 platform enterprise version JAVA 2 PLATFORM ENTERPRISE EDITION is a set is completely different in the traditional application development technical construction contains many modules mainly may simplify and the standard application system s development and the deployment then enhance the probability the security and use the value again This article uses these two kind of technologies to carry on based on the RFID scenic spot survey system s design and the development The paper first introduced J2ME technology some basic concepts and the architecture the MIDP basic programming method Then introduced the J2ME technology and the STRUTS related knowledge Then the key introduction based on the RFID scenic spot survey system s design and the performance history according to the system design proposed the system design model The system divides into the server end and the client side the server origin a series of STRUTS frame development realizes the client side use develops MIDLET to realize The server end has two kind of users The manager and the tourist the manager function is mainly to the scenic spot information revision label s management the scenic spot passenger capacity 唐文轩 基于 RFID 的景点导览系统 4 statistics tourist s traveling diary management as well as the client side service information management function The client side function is mainly inquires the localization function the map demonstration the map demonstration the traveling schedule plan as well as along with the tips function This article introduced with emphasis these function s realization with designs Then the key difficulty which meets to the system design and the code process makes said that finally worked to this article has made the summary and proposed further worked tentative plan Key words RFID J2ME J2EE struts Frame 2009 届网络工程专业毕业设计 论文 1 目录目录 第一章 绪 论 1 1 1 课题背景与意义 1 1 1 1 基于 RFID 的景点导览系统概述 1 1 1 2 移动通信技术的发展现状及趋势 2 1 1 3 射频识别系统的定义 2 1 1 4 选题的目的和意义 2 1 2 无线射频识别 RFID 3 1 2 1 RFID 简介 3 1 2 2 RFID 组成及工作原理 4 1 2 3 RFID 的优势 5 1 3 论文主要工作与结构 5 第二章 相关技术 7 2 1 J2ME 技术介绍 7 2 1 1 Java 技术的分类 7 2 1 2 J2ME 的优势 8 2 1 3 J2ME 的体系结构 8 2 2 MIDP 的编程方法 11 2 2 1 J2ME Wireless Toolkit 的安装 11 2 2 2 MIDlet 程序的基本结构 11 2 2 3 MIDlet 的生命周期 13 2 2 4 MIDlet 应用程序开发流程 14 2 3 STRUTS开发 14 2 3 1 struts 的定义 14 2 3 2 Struts 的概念和体系结构 15 2 3 3 struts 配置 16 2 3 4 struts 的基本元素 17 2 3 5 struts 的国际化 18 2 3 6 struts 的特点 18 第三章 基于 RFID 的景点导览系统实现 20 3 1 系统概述 20 3 2 客户端功能模块实现 22 3 2 1 查询定位功能 22 唐文轩 基于 RFID 的景点导览系统 2 3 2 2 地图展示功能 24 3 2 3 行程规划功能 31 3 2 4 旅游黄页功能 31 3 2 5 景点介绍功能 32 3 2 6 随身贴士功能 36 3 3 服务器功能实现 36 3 3 1 服务器访问数据库数据 36 3 3 2 游客登陆注册 38 3 3 3 游客订票服务 39 3 3 3 景点查询功能 41 3 3 4 景点维护功能 41 3 3 5 系统设备管理功能 42 3 3 6 游客信息管理功能 43 3 3 7 客流量信息管理功能 45 3 3 8 服务信息管理功能 48 3 4 数据库功能实现 49 第四章 难点与对策 54 4 1 STRUTS学习 54 4 2 J2ME 地图处理 54 第五章 结论 56 5 1 总结 56 5 2 展望 56 致谢语 57 参考文献 57 2009 届网络工程专业毕业设计 论文 1 第一章 绪 论 1 1 课题背景与意义 1 1 1 基于 RFID 的景点导览系统概述 最近几 RFID 无线射频识别技术 被广泛的 用在各方面 现在越来 越多的移动设备都提供了无线上网功能 也有越来越多的地方开始设置无线 网络基站以提供无线上网服务 移动设备与无线网络的结合将带给生活更多 便利 同时 已经有很多款移动智能终端提供了 RFID 读写器配件 可以方便 的将 RFID 技术和智能终端的无线网络服务相结合 现阶段 在旅游区所采用的导览服务大概分为如下两种方式 1 用录音带的语音导览 它的优点是参观者可自由走动 选择本身有兴 趣的展品或展区参观学习 但由于储存容量的限制 当参观者想多获取比较 感兴趣的展品的一些相关知识时 其往往无法提供较全面的知识 且互动性 不足 加之体积庞大 难吸引小朋友使用 此外 听障朋友们也无法享受语 音导览的解说方式 2 解说员导览方式 它由一名解说员带领一群参观者重点式地解说重要 的文物或景点 其优点为可以即问即答 但是参与的参观者必须亦步亦趋地 跟随解说员 且须凝神注意聆听解说 给参观者在学习中造成不便 且解说 人员的数目有限 加之培养专业解说人员需要花费大量的人事开销 非常不 符合经济效应 本文提出使用 RFID 技术开发出一套运行在移动终端的导览系统 基于 RFID 的景点导览系统 本系统可以在客户端通过查看电子阅读器来选择相关 景点的图文声像的信息 也可以根据景点客流量以及喜好程度来选择导览线 路 服务器端可以由管理员来管理相关的设备 游客和景点信息 唐文轩 基于 RFID 的景点导览系统 2 1 1 2 移动通信技术的发展现状及趋势 当前 移动 无线技术领域正处在一个高速发展的时期 各种创新移动 无线技术不断涌现并快速步入商用 移动 无线应用市场异常活跃 移动 无线技术自身也在快速演进中不断革新 在网络融合的大趋势下 3G WIMAX WLAN 等各种移动 无线技术在演进中相互融合 在多元融合的大趋势下 3G WIMAX WLAN 等各种无线技术在竞争中互 相借鉴和学习 涌现出了同时被上述无线技术采用的新型射频技术 如 MIMO 和 OFDM 技术等 与此同时 在以 ITU 和 3GPP 3GPP2 为引领的蜂窝移动通信 从 3G 到 E3G 再走向 B3G 4G 的演进道路上 以及 IEEE 引领的无线宽带接入 从无线个人域网到无线局域网 无线城域网 再到无线广域网的演进道路上 都开始增加对方的内容 例如 移动通信不断强化宽带传输性能 无线宽带 接入不断增强漫游性能以及安全性能 1 1 3 射频识别系统的定义 射频识别 RADIO FREQUENCY IDENTIFICATION RFID 俗称电子标签 是一种非接触式的自动识别技术 它通过射频信号自动识别目标对象并获取 相关数据 识别工作无须人工干预 可工作于各种恶劣环境 RFID 技术可识 别高速运动物体并可同时识别多个标签 操作快捷方便 它由标签 TAG 阅读器 READER 天线 ANTENNA 组成 RFID 技术的基本工作原理 标签进 入磁场后 接收解读器发出的射频信号 凭借感应电流所获得的能量发送出 存储在芯片中的产品信息 PASSIVE TAG 无源标签或被动标签 或者主动 发送某一频率的信号 ACTIVE TAG 有源标签或主动标签 解读器读取信 息并解码后 送至中央信息系统进行有关数据处理 1 1 4 选题的目的和意义 随着计算机技术 无线网络通信以及互联网技术飞速发展 RFID 产业 2009 届网络工程专业毕业设计 论文 3 将在各个领域大放异彩 彼得 哈若普如是说 RFID 应用领域日益扩大 现已涉及到人们日常生活的各个方面 并将成为未来信息社会建设的一项基 础技术 RFID 可以应用于图书与文档管理 门禁管理 定位与物体跟踪 环 境感知和支票防伪等多种应用领域 但在旅游业上的应用还仅限于门禁管理 RFID 技术作为未来最有前途的信息技术之一 更得到了全世界的广泛重 视 在很短的时间内取得了巨大发展 近两年 社会各界也越来越重视 RFID 技术在国内的发展和应用 领域内的各大企业纷纷投入到研究 开发技术与 应用的队伍中来 研究与开发 RFID 导览系统的目的是为参观者自动提供个性化和交互式 的多媒体信息 参观者利用带有 CF RFID 读写器的 PDA 读取景点处的 RFID 标签后 关于此景点的详细数据 资料 图片或者影片等丰富的多媒体导览 资讯马上显示出来 RFID 导览系统让参观者可随兴趣 自然地取得景点的导 览资料 给参观者带来极大的便利 1 2 无线射频识别 RFID 1 2 1 RFID简介 RFID 是一种非接触式的自动识别技术 它通过射频信号自动识别目标对 象并获取相关数据 识别工作无须人工干预 作为条形码的无线版本 RFID 技术具有条形码所不具备的防水 防磁 耐高温 使用寿命长 读取距离大 标签上数据可以加密 存储数据容量更大 存储信息更改自如等优点 已经 被世界公认为本世纪十大重要技术之一 在生产 零售 物流 交通等各个 行业等各个行业有着广阔的应用前景 利用智能电子标签来标识各种物品的 一种新的识别技术 其核心是智能电子标签 这种标签根据无线射频标识原 理 RFID RADIO FREQUENCY IDENTIFICATION SYSTEM 而生产 它与读写器 通过无线射频信号交换信息 电子标签是未来标签市场的一种终极产品 唐文轩 基于 RFID 的景点导览系统 4 现在 RFID 是 AIDC 领域最热门的技术 尽管这种技术已经存在发展了 许多年了 但它只有在从本领域众多的发明技术中总结规划出一个技术标准 以后才能得到快速的切实的应用 ISO 和 AIM AUTO ID MANUFACTURES 正在 进行这方面的工作 相信不久的将来 RFID 会得到很快的发展 1 2 2 RFID 组成及工作原理 1 标签 标签也被称为电子标签或智能标签 它是内存带有天线的芯片 芯片中 存储有能够识别目标的信息 RFID 标签具有持久性 信息接收传播穿透性强 存储信息容量大 种类多等特点 有些 RFID 标签解读器通过接收标签发出的 无线电波接收读取数据 最常见的是被动射频系统 当解读器遇见 RFID 标签 时 发出电磁波 周围形成电磁场 标签从电磁场中获得能量激活标签中的 微芯片电路 芯片转换电磁波 然后发送给解读器 解读器把它转换成相关 数据 控制计算器就可以处理这些数据从而进行管理控制 在主动射频系统 中 标签中装有电池在有效范围内活动 支持读写功能 目标物体的信息能 随时被更新 2 读写器 读写器分为手持和固定两种 由发送器 接收仪 控制模块和 TRANSCEIVER 组成 TRANSCEIVER 和控制计算机或 PLC 连接从而实现它的沟通 功能 解读器也有天线接收和传输信息 3 数据传输和处理系统 工作原理 解读器通过接收标签发出的无线电波接收读取数据 最常见 的是被动射频系统 当解读器遇见 RFID 标签时 发出电磁波 周围形成电磁 场 标签从电磁场中获得能量激活标签中的微芯片电路 芯片转换电磁波 然后发送给解读器 解读器把它转换成相关数据 控制计算器就可以处理这 些数据从而进行管理控制 在主动射频系统中 标签中装有电池在有效范围 2009 届网络工程专业毕业设计 论文 5 内活动 1 2 3 RFID 的优势 1 RFID 通过自动的方式迅速简便无误的获得关于产品 地点 时间 交易的信息 不用接触 看见目标 即使物品被牢固包装或是环境不适 也 不会影响它的识别功能 这是它有别于条形码的一大特点 2 RFID 并不仅仅是代码 它能够读写数据 能够在处理系统中储存资 料 并可以将其连接到 PC 或 PLC 网络上 RFID 能够提高数据质量 货物管 理 资料持久保存等 3 RFID 在供货链中的运用能够提高管理 加强终端对终端的连接 RFID 的运作不需要人工介入 它无线运作 具有读写功能 1 3 论文主要工作与结构 本文的工作主要包括 1 学习和了解了移动 RFID 相关概念 理论和设计方法 2 分析现阶段 RFID 的设计原理和实现方法 3 学习掌握 SQL SERVER 数据库 服务器开发原理及其应用 深入学习 J2EE 及 J2ME 的开发原理 采用三层结构模型 4 基于 J2ME 技术 开发实现一个基于 RFID 的景点导览系统 系统包括 三个层次 服务器端 A 采用 TOMCAT 服务器作为 SERVLET 的引擎 支持不同类型的应用服务 程序 B 采用 STRUTS 框架设计和设计和开发课题 唐文轩 基于 RFID 的景点导览系统 6 客户端 A 采用 J2ME 的 CLDC MIDP 规范 通过 HTTP 协议向服务器发出请求 B 采用多线程技术和消息队列处理用户操作和服务器消息 有效解决 了响应及显示的及时性 数据层 A 采用数据库 SQL SERVER 2000 数据 5 对本文所开发的系统的重点难点作出了总结 论文共分 5 章 结构如下 第一章为前言 简单介绍了当前 RFID 应用的发展现状 RFID 实现的意 义和目标以及 RFID 的基本理论 第二章主要对景点导览系统的开发技术进行了介绍 对 J2ME 技术 J2EE 技术 MIDP 的编程方法进行详细的介绍 第三章是本文的重点 详细讲述了景点导览系统的实现过程 分别讲述 了客户端的实现原理 代码及图示 服务器端的实现原理 代码及图示 比 较清晰的展现了系统的功能实现 第四章主要是针对在开发过程中遇到的难点的一个回顾 因为在每个阶 段都会遇到很多问题 难点 所以在这里列出几个来重点讲解一下 也从侧 面来反映系统的开发过程 第五章是对整个学习过程的总结 讲述自己在学习过程中的心得体会 2009 届网络工程专业毕业设计 论文 7 第二章 相关技术 2 1 J2ME 技术介绍 2 1 1 Java 技术的分类 图 2 1 Java 体系结构 JAVA 的最大目标和特点 就是 一次编写 到处运行 的平台无关性 但是 正如 SUN 认识到的 一套标准无法适应各式各样的需求 因此 JAVA 技术目前共有三套 分别针对不同的平台的应用 JAVA2 PLATFORM STANDARD EDITION J2SE JAVA 标准版 针对桌面 端的 PC 和工作站的个人和低端商务应用 JAVA2 PLATFORM ENTERPRISE EDITION J2EE JAVA 企业版 针对服 务器端企业级应用 支持 SERVLET JSP 和 XML 等等 JAVA2 PLATFORM MICRO EDITION J2ME JAVA 移动版 针对有限内 存 显示和处理能力的设备 主要是消费电子和嵌入式设备领域 这实际正是 JAVA 语言设计最初的目标领域 唐文轩 基于 RFID 的景点导览系统 8 2 1 2 J2ME 的优势 移动设备 PDA 市场的繁荣发展造成了五花八门的厂商与品种异常广泛的 设备例如两种设备也许具有相同的功能当实现的方法可能会有相当大的区别 例如对 PDA 和手持电话来说都具有显示的功能但屏幕的实际尺寸却有很大的 区别支持的色深也不相同重复的开发工作以及移植的不便性使得开发成本与 开发难度不断提高这就使得设备厂商要求拥有一个统一的开发平台 2 1 3 J2ME 的体系结构 值得注意的是 JAVA 所宣称的 一次编译 到处运行 在这里是不适 用的 这种 跨平台 在某些时候是毫无意义的 在 J2SE 上编译好的程序在 J2ME 上是没办法运行的 因为从两种平台所支持的类库到程序的结构都有所 不同 所以在设计 J2ME 应用时应该充分考虑到这些因素 下图给出 J2ME 一个总体的构架 图 2 2 J2ME 一个总体的构架 2009 届网络工程专业毕业设计 论文 9 下面我们分别来介绍这三部分 CONFIGURATION J2ME 将嵌入式设备分为两类 一种是 CDC CONNECTED DEVICE CONFIGURATION 资源无限设备 另一种是 CLDC CONNECTED LIMITED DEVICE CONFIGURATION 资源受限设备 资源受限设备一般指手机 PDA 这 种运算能力有限 电力供应依靠电池 网络带宽有限的设备 而资源无限设 备是相对资源有限设备来说的 它们一般有充足的电力供应 如电视机顶盒 等 在 CDC 和 CLDC 规范中 又分别定义硬件要满足的要求 如表 2 1 表 2 1 CLDC 和 CDC 的比较 CDCCLDC JSR 编号JSR 36JSR 30 电源供应充足电池供电有限 网络必须有连接网络的能力仅支持有线方式的网络连接功能 主要应用电视机顶盒 高端 PDA etc 手机 双向寻呼机 PDA etc 虚拟机CVMKVM 支持的 ProfileFoundation ProfileMIDP RAM不小于 256KRAM 与 ROM 再加闪存要为 128k 512k ROM不小于 512KRAM 与 ROM 再加闪存要为 128k 512k 在规范中所定义的类库除了 JAVA 标准核心类库的子集外 也加入了与该 类型的设备特性相符的扩充类库 整体来说 J2ME 先把所有的嵌入式设备利 用 CONFIGURATION 概念化分成两种类型 与其它 JAVA 版本对于核心类库与扩 充类库的概念相比较 CLDC 和 CDC 的范围应该如图 2 3 所示 唐文轩 基于 RFID 的景点导览系统 10 图 2 3 CDC CLDC 的范围 PROFILE 通常同一个 JAVA 程序在不同的嵌入式设备上所显示的用户界面风格不完 全一样 在不同设备上具体应该怎样显示就定义在 PROFILE 中 PROFILE 中 也定义了程序应该如何与用户或设备交互 例如 程序的生命周期 如何接受 来自用户的信息 PROFILE 中定义的扩充类库是根据底层 CONFIGURATION 内 所定义的核心类库所建立的 为了更符合特殊设备的需求 PROFILE 会在 CONFIGURATION 中的类增加新的方法 或是让方法抛出新的异常 在 PROFILE 中也定义了特定种类嵌入式设备的最小配备需求 一般情况下 PROFILE 对显 示功能 网络功能以及耗电量等相关需求会比 CONFIGURATION 中的需求要高 建立在 CLDC 上的 PROFILE 有 MIDP MOBILE INFORMATION DEVICE PROFILE 这个 PROFILE 是针对移 动设备所定义的 如手机 寻呼机等 本文客户端的实现就是采用 MIDP2 0 所以说本系统的客户端不只是手机 而是所有采用 MIDP2 0 规范的 移动设备 INFORMATION MODULE PROFILE 是为不需要图形界面的小型设备定制的 2009 届网络工程专业毕业设计 论文 11 另外各个手机生产厂商也制定了自己的各种 PROFILES OEM EXTENSIONS OPTIONAL PACKAGE 除了 CONFIGURATION 和 PROFILE 之外 在 J2ME 规范中还定义了厂商选择性实现包 厂商选择性实现 通常是 一些本身具有独立价值的 API 厂商可以依照自己的需求 选择性的实现其 中某些 OPTIONAL PACKAGES 规范 厂商选择性实现包与 CLDC 和 MIDP 的关系如下图 2 4 所示 图 2 4 CLDC 和 MIDP 的关系 2 2 MIDP 的编程方法 2 2 1 J2ME Wireless Toolkit 的安装 MIDP 应用程序的外 还必须借助一些特殊的开发工具和程序库 因此必 须要额外安装 J2ME WIRELESS TOOLKIT 简称 WTK 您可以该站点 HTTP JAVA SUN COM PRODUCTS SJWTOOLKIT DOWNLOAD 2 2 1 HTML 下载该 软件的最新版本 J2ME WIRELESS TOOLKIT2 2 1 如果您已经配置好 JDK 只 需点击安装文件就可以迅速安装 WTK 唐文轩 基于 RFID 的景点导览系统 12 2 2 2 MIDlet 程序的基本结构 在 MIDP 中定义了一种新的应用程序模型 MIDLET MIDLET 是一个可以执 行的应用程序及基本单位 它继承自 JAVAX MICROEDITION MIDLET MIDLET 被 JAM JAVA APPLICATION MANAGER 管理 同时 MIDLET 可以和 JAM 通信 通知应用管理软件自己状态的变化 通常是通过方法 NOTIFYDESTROYED 和 NOTIFYPAUSED 实现的 MIDLET 继承自 JAVAX MICROEDITION MIDLET MIDLET 该类中定义了三 个抽象方法 STARTAPP PAUSEAPP 和 DESTROYAPP 因此 我们编写的程 序必须重写这三个方法 一个 MIDLET 应用程的基本程序结构如下 代码 import javax microedition midlet import javax microedition lcdui public class HelloWorld extends MIDlet implements CommandListener private Command exitCommand private TextBox tb public HelloWorld exitCommand new Command Exit Command EXIT 1 tb new TextBox Hello MIDlet Hello World 15 0 tb addCommand exitCommand tb setCommandListener this protected void startApp Display getDisplay this setCurrent tb protected void pauseApp 2009 届网络工程专业毕业设计 论文 13 protected void destroyApp boolean u public void commandAction Command c Displayable d if c exitCommand destroyApp false notifyDestroyed 2 2 3 MIDlet 的生命周期 MIDLET 有三个状态 分别是 PAUSE ACTIVE 和 DESTROYED 在启动一个 MIDLET 的时候 应用管理软件会首先创建一个 MIDLET 实例并使得他处于 PAUSE 状态 当 STARTAPP 方法被调用的时候 MIDLET 进入 ACTIVE 状态 也 就是所说的运行状态 在 ACTIVE 状态调用 DESTROYAPP BOOLEAN UNCONDITIONAL 或者 PAUSEAPP 方法可以使 MIDLET 进入 DESTROYED 或者 PAUSE 状态 事实上 当 DESTROYAPP 方法被调用的时候 AMS 通知 MIDLET 进入 DESTROYED 状态 在 DESTROYED 状态的 MIDLET 必须释放了所有的资源 并且保存数据 如果 UNCONDITIONAL 为 FALSE 的时候 MIDLET 可以在接到通 知后 抛出 MIDLETSTATECHANGEEXCEPTION 而保持在当前状态 如果设置为 TRUE 的话 则必须立即进入 DESTROYED 状态 图 2 5 说明了 MIDLET 状态改 唐文轩 基于 RFID 的景点导览系统 14 变情况 图 2 5 MIDlet 生命周期 2 2 4 MIDlet 应用程序开发流程 图 2 7 所示是标准的 JAVA 手机程序的开发流程 首先编写代码 然后编 译源代码为 CLASS 文件 编译好的 CLASS 文件还要经过预先审核才能在 KVM 上运行 根据 MIDP 规范 一个程序最终必须经过打包合成 才能被 JAM 顺利 加载运行 所以最后利用 JDK 内附的 JAR EXE 这个包装工具产生 JAR 文件 至此一个 MIDLET 应用程序的开发就完成了 一个完整的 MIDLET 应用程序是由两个文件组成 应用程序主体 JAR 文 件 ZIP 压缩文件 和应用程序描述文件 JAD 文件 纯文本文件 JAD 文件 有两个作用 一是用户在下载 MIDLET 前可以先下载 JAD 文件 JAD 文件一般 体积比较小 看过 JAD 文件后决定是否下载应用程序 这样可以节省费用 二是在 JAD 文件中可以加入证书 CERTIFICATE 以确保通过网络传输的应用 程序在传输过程中没有被篡改 2 3 struts 开发 2 3 1 struts的定义 框架 FRAMEWORK 是可重用的 半成品的应用程序 可以用来产生专门 的定制程序 JOHNSON 框架向开发人员提供一系列具有以下特征的骨架组件 1 已经知道它们在其它程序上工作的很好 2 它们随时可以在下一个项目中使用 3 它们可以被组织的其它团队使用 STRUTS 框架是基于 MODEL 2 的架构 它提供一个控制器 SERVLET 来处 2009 届网络工程专业毕业设计 论文 15 理导航流和一些特殊类来帮助数据访问 随框架也提供一个丰富的标签库 以使 STRUTS 易于和 JSP 一起使用 2 3 2 Struts 的概念和体系结构 STRUTS 有其自己的控制器 CONTROLLER 同时整合了其他的一些技术 去实现模型层 MODEL 和视图层 VIEW 在模型层 STRUTS 可以很容易 的与数据访问技术相结合 包括 EJB JDBC 和 OBJECT RELATION BRIDGE 在 视图层 STRUTS 能够与 JSP VELOCITY TEMPLATES XSL 等等这些表示层组件 相结合 STRUTS FRAMEWORK 是 MVC 模式的体现 下面我们就从分别从模型 视图 控制器来看看 STRUTS 的体系结构 ARCHITECTURE 下图显示了 STRUTS FRAMEWORK 的体系结构响应客户请求时候 各个部分工作的原理 图2 6 struts的体系结构 从视图角度 VIEW 首先 STRUTS 提供了 JAVA 类 ORG APACHE STRUTS ACTION ACTIONFORM JAVA 开发者将该类细分来创建表单 BEAN 在运行时 该 BEAN 有两种用法 1 当 JSP 准备相关的 HTML 表单以进行显示时 JSP 将访问该 BEAN 它 保存要放入表单中的值 那些值是从业务逻辑或者是从先前的用户输入来提 唐文轩 基于 RFID 的景点导览系统 16 供的 2 当从 WEB 浏览器中返回用户输入时 该 BEAN 将验证并保存该输入以 供业务逻辑或 如果验证失败的话 后续重新显示使用 其次 STRUTS 提供了许多定制 JSP 标记 它们的使用简单 但是它们在 隐藏信息方面功能强大 例如 除了 BEAN 名称和给定 BEAN 中每个段的名称 之外 页面设计者不需要知道有关表单 BEAN 的更多信息 从模型角度 MODEL STRUTS 虽然不直接有助于模型开发 在 STRUTS 中 系统模型的状态主 要由 ACTIOMFORM BEAN 和值对象体现 从控制器角度 CONTROLLER 在 STRUTS FRAMEWORK 中 CONTROLLER 主要是 ACTIONSERVLET 但是对 于业务逻辑的操作则主要由 ACTION ACTIONMAPPING ACTIONFORWARD 这几个 组件协调完成 也许这几个组件 应该划分到模型中的业务逻辑一块 其 中 ACTION 扮演了真正的控制逻辑的实现者 而 ACTIONMAPPING 和 ACTIONFORWARD 则指定了不同业务逻辑或流程的运行方向 2 3 3 struts 配置 1 STRUTS 可以不需要安装 2 拷贝 STRUTS LIB 下的所有的 JAR 包到 WEB INF LIB 下 3 修改 WEB XML 文件 配置 ACTIONSERVLET ACTION ORG APACHE STRUTS ACTION ACTIONSERVLET 2009 届网络工程专业毕业设计 论文 17 CONFIG WEB INF STRUTS CONFIG XML DEBUG 3 DETAIL 3 0 ACTION DO 4 配置 STRUTS CONFIG XML 是 STRUTS 配置文件的根元素 和它对应的配置 类为 ORG APACHE STRUTS CONFIG MODULECONFIG 它的 DTD 定义 如下 在 STRUTS 配置文件中 必须按以上 DTD 指定 唐文轩 基于 RFID 的景点导览系统 18 2 3 4 struts 的基本元素 视图 视图是由一组 JSP 文件组成 视图和控制器与模型之间交互 并 为模型提供用户界面 模型 模型表示应有程序的状态和业务逻辑 业务逻辑常由 EJB 或 JAVABEAN 组件实现 在 MVC 应用程序中 模型层通常是最大最重要的部 分 它负责保存事务逻辑代码和数据库访问代码 模型是应用程序的核心 因此 模型决定了应用程序的功能 控制器 控制器由 ACTIONSERVLET 类和 ACTION 类实现 业务逻辑 的操作主要由 ACTION 实现 ACTIONMAPPING ACTIONFORWARD 这 几个组件协调完成 ACTION 扮演了真正的控制逻辑的实现者 ACTIONSERVLET 继承自 JAVAX SERVLET HTTP HTTPSERVLET 类 ACTIONSERVLET 主要负责将 HTTP 的客户请求信息组装后 根据配置文 件的指定描述 转发到适当的处理器按照 SERVELT 的标准 所有的 SERVLET 必须在 WEB 配置文件 WEB XML 声明 同样 ACTOINSERVLET 必须在 WEB APPLICATION 配置文件 WEB XML 中 描述 2 3 5 struts 的国际化 STRUTS 允许将不同语言的文字写在多个资源文件中 每个资源对应一 种语言 而在 JSP 页面上则通过 STRUTS 标签来显示文字 该标签可以根 据浏览器的当前语言设置确定从对应的语种资源文件中取出字符串 显示在 页面上 资源文件的存放目录可以是 WEB INF CLASSES 下的任意目录 为了便于管理 建议在 WEB INF CLASSES 下建立目录 RESOURCES 将所有的资源文件都放在该目录下 STRUTS 通过配置文件 STRUTS CONFIG XML 配置资源文件的所在位置 2009 届网络工程专业毕业设计 论文 19 2 3 6 struts 的特点 1 STRUTS 不仅是线程安全 THREAD D DEPENDENT 的 2 ACTIONFORM BEAN 最小化子类代码并缩短子类层次 3 STRUTS 标签库提供通用功能 4 STRUTS 组件对应用来说都是可重用的 5 STRUTS 是轻量型架构 6 STRUTS 是标准兼容的 7 STRUTS 是开源的 具有良好的文档 唐文轩 基于 RFID 的景点导览系统 20 第三章 基于 RFID 的景点导览系统实现 3 1 系统概述 本系统采用 B S 模式开发 并且详细设计了服务器端和客户端的功能模 块 如图 3 1 所示 图 3 1 系统功能模块结构 从图中可以看出 系统为三层结构 数据层 服务器层 客户层 服务 器端实现管理员功能 游客功能 客户端实现查询定位 地图展示 行程规 划 旅游黄页 景点介绍 随身贴士等功能 使用移动终端的导览示意图如图 3 2 所示 网络拓扑如图 3 3 所示 2009 届网络工程专业毕业设计 论文 21 e WLAN 媒体库 展品 RFID DB Web Browser 游客 介绍 推荐 服务器 游客日志 3 2 使用移动终端的导览示意图 3 2 RFID 网络结构示意图 唐文轩 基于 RFID 的景点导览系统 22 3 2 客户端功能模块实现 系统功能模块共分为六块 查询定位 地图展示 行程规划 旅游黄页 景点介绍 随身贴士 3 2 1 查询定位功能 J2ME 手机查询定位功能分为三种 定点查询 模糊查询和类别查询 主 要是通过客户端向服务器发送查询请求 通过服务器处理向客户端返回相应 信息的地图 如图 3 2 所示 定点查询 通过输入所熟悉的游客的标签 Id 号 系统连接服务器 服务 器返回该标签持有者所在的位置 以及该位置的景点详细信息 模糊查询 输入景点的代号 拼音首字母 系统连接服务器 服务器根 据景点代号返回相应的景点的位置信息 类别查询 根据景点类别 服务器返回同一类别的景点的详细信息 图 3 4 查询定位 实现连接 http 的代码段 public class HttpCommHandler private String URL 2009 届网络工程专业毕业设计 论文 23 public HttpCommHandler String URL this URL URL 发送消息 public String sendMessage String message throws IOException HttpConnection httpConn DataInputStream input DataOutputStream output String result try httpConn open output this openDataOutputStream httpConn output writeUTF message output close input this openDataInputStream httpConn result input readUTF System out println result closeConnection httpConn input output return result finally 打开连接 public HttpConnection open throws IOException try HttpConnection connection HttpConnection Connector open URL connection setRequestProperty User Agent System getProperty microedition profiles 唐文轩 基于 RFID 的景点导览系统 24 connection setRequestProperty Content Type application octet stream connection setRequestMethod HttpConnection POST return connection catch IOException ioe throw ioe 打开数据连接 private DataInputStream openDataInputStream HttpConnection conn throws IOException int code conn getResponseCode if code HttpConnection HTTP OK return conn openDataInputStream else throw new IOException 3 2 2 地图展示功能 本系统对地图实行放大缩小和漫游等操作 并且可以定位到相应的景点 上 对于图片的放大缩小 简单的来说就是图像的变形变换 就是把源图像 每个点坐标通过变形运算转为目标图像相应点的新坐标 但是这样会导致一 个问题就是目标点的坐标通常不会是整数 所以在做放大变换时 需要计算 生成没有被映射到的点 而在缩小变换时 需要删除一些点 这样 最简单 2009 届网络工程专业毕业设计 论文 25 的办法就是插值算法 最近邻域法 顾名思义 就是把非整数坐标作一个 四舍五入 取最近的整数点 而图片的漫游功能则是根据按键来选择 设计 一个方法来根据按键的不同设置 x y 坐标的变换 如图 3 3 所示 原图 缩小 50 放大 50 图 3 5 地图的放大缩小功能 实现地图缩放功能的代码段 插值算

温馨提示

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

评论

0/150

提交评论