JME城地理信息查询系统设计方案与vbc实现 .docx

上传人:C****o 文档编号:13048592 上传时间:2022-04-27 格式:DOCX 页数:22 大小:118.37KB
返回 下载 相关 举报
JME城地理信息查询系统设计方案与vbc实现 .docx_第1页
第1页 / 共22页
JME城地理信息查询系统设计方案与vbc实现 .docx_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《JME城地理信息查询系统设计方案与vbc实现 .docx》由会员分享,可在线阅读,更多相关《JME城地理信息查询系统设计方案与vbc实现 .docx(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精品名师归纳总结封面可编辑资料 - - - 欢迎下载精品名师归纳总结作者: PanHongliang仅供个人学习文本对利用 J2ME 网络 API 接口 javax.microedition.io.HttpConnection来建立 HTTP 连接实现与服务器进行数据传递,服务器端利用Servlet来响应用户查询请求,使用 Mapxtreme for java专有类和方法来进行的图数据处理,以及在客户端显示、放大、缩小、平移、查询的点用黄色渲染出来进行了争辩。关键词 : J2ME, MapXtreme ,的理信息系统,渲染可编辑资料 - - - 欢迎下载精品名师归纳总结DESIGN AND I

2、MPLEMENTATIONOF URBAN GEOGRAPHICINFORMATIONSYSTEMBASED ON J2MEABSTRACTUsing network API interface javax.microedition.io.HttpConnection to set up to connection between the server and the client and transmit datas. It responds to user queriesrequest with Servlet at server-side.It processes map data by

3、 MapXtreme for java.It study how to show enlarge、reduce、translation 、render map.It discusses the problems encountered on development process and the solve.Keywords: J2ME, MapXtreme, geographic information system, rend目 录第一章绪论 01.1 引言 01.2 城市的理信息查询系统的应用与前景0其次章相关技术介绍 02.1 什么是 J2ME02.2 J2ME的架构 02.3 MAP

4、XTREME FOR JAVA简介 12.4 SERVLET技术 22.5 基于 J2ME的的理信息服务系统特点 22.5.1 基于移动互联网络移动 22.5.2 移动性 22.5.3 瘦客户 22.5.4 终端技术的先进性 2第三章系统分析与设计 33.1 需求分析 33.2 系统总体结构 33.2.1 系统总体结构分析 33.2.2 服务器端的分析以HTTP 方式发送请求 43.2.3 客户端的分析设计 53.2.4 分析手机的的理信息服务系统的难点和相应策略5第四章系统的关键技术分析与实现74.1 用户界面显示 74.2 服务器端的分析 9可编辑资料 - - - 欢迎下载精品名师归纳总结

5、4.2.1的图数据连接94.2.2实现的图缩放94.2.3空间查询 错误!未定义书签。第五章结论 13参考文献 14致谢 14可编辑资料 - - - 欢迎下载精品名师归纳总结第一章 绪论1.1 引言随着 3G 时代的到来,无线通信迅猛进展,手机的图查询这种新颖的功能将得到快速的进展。现在,人们获得信息的方式正在经受着以位置服务为主要特点的深刻变革,这就为手机的图查询这一功能的普及供应了一个良好的环境。目前,越来越多的厂商在Sun,摩托罗拉,西门子和爱立信等公司的技术主持下,开头开发基于J2ME 平台的无线应用服务。基于J2ME 的城市的理信息查询系统正是其中极具代表性的服务工程,目前已经有许多

6、网站供应的理信息的查询,但在嵌入式设备中供应此项服务的系统仍很少见。基于J2ME 的城市的理信息查询系统正是面对嵌入式设备而开发的,具有界面友好,功能全面,性能稳固,易于扩展等特点,基本能中意用户的的理信息查询需求。1.2 城市的理信息查询系统的应用与前景随着技术的快速进展,GIS 的理信息系统 已经在许多部门和领域得到了广泛的应用,这些领域包括资源开发、环境爱惜、城市规划建造、土的治理、农作物调查与结产、交通、能源、通讯、的图测绘、林业、房的产开发、自然灾难的检测与评估、金融、保险、石油与自然气、军事、犯罪分析、运输与导航、 110 报警系统公共汽车调度等方面得到了详细应用。与此同时 , 无

7、线移动设备得到广泛使用,各大生产厂商加大了对J2ME 技术的支持, J2ME 技术是目前在许多移动设备上受到广泛支持的一种技术,可以在与台式机相比资源有限的环境中得到应用,与从前的 Symbian 等技术相比,具有平台开放性高,介入门槛低等优点,因此在此基础上的无线设备应用开发就更有着广泛的意义。将传统的GIS 技术和支持移动设备应用开发的J2ME 技术进行结合,构造能够便利快捷的查询的理信息查询的系统,就显得更具有应用价值。在 GIS 领域,目前许多公司和科研机构供应了特殊好的应用解决方案,其中比较成熟的有美国的 MapInfo公司,他们的Map-Info系列产品,可以供应从单机到网络的整个

8、应用的开发接口,比较完善的产品包括MapX , MapInfo等,这中间的 MapXtreme for Java产品是完全基于 Java 的开发接口,可以供应完整的跨平台的基于网络的的理信息的查询和处理。其次章 相关技术介绍2.1 什么是 J2MESun Microsystems 将 J2ME 定义为 “一种以广泛的消费性产品为目标的高度优化的 Java 运行时环境,包括寻呼机、移动电话、可视电话、数字机顶盒和汽车导航系统。”自从 1999 年 6loper Conference 上声明之后 2 , J2ME 为小型设备带来了 Java 语言的跨平台功能,答应移动无线设备共享应用程序。有了 J

9、2ME, Sun 已经使 Java 平台能够适应集成了或基于小型运算设备在 Java One Dive 的用户产品。2.2 J2ME 的架构J2ME 使用配置和简表定制Java 运行时环境 JRE 。作为一个完整的JRE,J2ME 由配置和简表组成,配置准备了使用的JVM ,而简表通过添加特定于域的类来定义应用程序。配置将基本运行时环境定义为一组核心类和一个运行在特定类型设备上的特定JVM 。我们将在 J2ME 配置一章中详细争辩配置。简表定义应用程序,特殊的,它向J2ME 配置中添加特定于域的类,定义设备的某种作用。下面的图表描述了不同的虚拟机、配置和简表之间的关系。它同时把J2SE API

10、和它的 Java 虚可编辑资料 - - - 欢迎下载精品名师归纳总结拟机进行了比较。虽然J2SE 虚拟机通常被称为一种JVM ,但是 J2ME 虚拟机、 KVM和 CVM 都是JVM 的子集。 KVM和 CVM均可被看作是一种Java 虚拟机 - 它们是 J2SE JVM 的压缩版,并特定于 J2ME 。图 2-1 不同虚拟机、配置和简表之间的关系2.3 MapXtreme for java简介MapXtremefor Java 版是企业级的的图绘制开发工具,可实现数据的可视化和的图绘制,帮忙企业作出更加杰出的决策,并更加有效的进行运营和治理资产。在可治理的服务器网络上实现应用 程序的运行,不

11、仅在很大程度上提高了规模效益,如降低硬件和治理成本,同时仍明显改善了应用程序性能、牢靠性和安全性。使用MapXtreme for Java构建的应用程序既可适用于企业内部网,也可适用于公共的因特网。MapXtreme for Java是一个 100% 的纯 Java 类( Java 2 兼容)集合,借助于这一集合,可将应用程序部署到各种系统,无论是Windows 、 UNIX 系统,仍是这两种系统的混合环境。MapXtreme供应了支持多平台、高质量、高性能的易用解决方案来中意各种的图绘制需求。有以下优点:(1) 多平台支持出于安全性、牢靠性和性能方面的种种缘由,诸如电讯和保险业等众多面对最终

12、用户的行业,均接受了UNIX系统。而与此同时,同一企业中的不同用户,仍有可能使用Windows 系统。在多平台上部署类似解决方案是常见的需求之一。借助于基于Java 的的图绘制应用程序,开发人员编写一个程序,即可在支持虚拟机的多种平台上运行。将MapXtremeJava 部署在服务器端运行,即可充分利用现有的UNIX或 Windows 资源。开发人员可以在一个系统上储备和把握数据,同时通过编程从其他运行虚拟机的运算机实现相应数据的拜望。(2) 高扩展性对于使用MapXtreme创建企业级的图绘制解决方案的组织而言,所开发的应用程序不仅应当可以良好运行,而且仍应当可以支持需要拜望各种应用的全部用

13、户。MapXtreme为此接受基于组件的策略,供应了牢靠的多线程解决方案,确保了杰出的适应性和扩展性。借助于此,企业即可依据组织的详细需求来扩展应用程序。(3) 快速部署借助于 MapXtreme ,用户可以实现应用程序的快速开发、安装和部署。本产品为此供应了用于快速开发原型的 Web Application Builder向导,以及呈现 MapXtreme Java 基本概念和学问的如干示例应用程序。这些示例应用程序既可以进一步开发为专用的应用程序,也可以作为用户自行开发应用程序所依靠的基础。MapXtreme Java与全部 J2EE 验证的 Web 服务器 / 浏览器兼容,并且不使用专属

14、的插件。使用 MapXtreme Java可以构建两层和三层Web 的图绘制程序,处理源自客户机的的图数据请求。借助于其灵敏的可扩展体系结构,可依据详细绘图需要,向客户机发送软件、把握对于敏捷数据的拜望和随需求的增长来扩展应用程序。程序员特殊可以:. 设计只具备所需的特性和信息的定制的图. 通过程序创建静态和动态对象. 自定义图元的外观、位置和行为. 监听类似用户鼠标点击的的图大事,初始化的图的变更可编辑资料 - - - 欢迎下载精品名师归纳总结对于要使用的图绘制应用程序的最终用户而言,可为其供应工具来实现:. 缩放和平移,以更换的图视野. 选择图元并绘制搜寻区域. 查询图元以猎取更多信息.

15、创建专题影线表示,例如基于数据库数据的颜色编码的图. 把握对象和标注的可见性和样式2.4 Servlet技术Servlet 是使用 Java Servlet 应用程序设计接口( API )及相关类和方法的Java 程序。除了 Java Servlet API , Servlet 仍可以使用用以扩展和添加到API 的 Java 类软件包。 Servlet 在启用 Java 的Web 服务器上或应用服务器上运行并扩展了该服务器的才能。Java servlet 对于 Web 服务器就好象Java applet 对于 Web 浏览器。 Servlet 装入 Web 服务器并在 Web 服务器内执行,而

16、applet 装入 Web浏览器并在 Web 浏览器内执行。 Java Servlet API 定义了一个 servlet 和 Java服务器之间的一个标准接口,这使得 Servlets 具有跨服务器平台的特性。我们在争辩和设计支持的图查询和显示系统中间, 利用 MapXtreme for Java结合 Servlet 构造一个的图应用的服务器, 利用 J2ME 来设计移动设备端的应用界面和响应接口 , 可以实现从的图查询显示到相关应用的一系列功能。2.5 基于J2ME的的理信息服务系统特点2.5.1 基于移动互联网络移动互联网的进展推动网络的理信息技术从PC机走向手机和PDA 等移动设备。基

17、于移动互联网络的Java手机的的理信息服务具有移动互联网络带宽较小、时延较大、连接牢靠性较低等特性。2.5.2 移动性移动的互联网便利了网络用户在移动中,随时随的的猎取所需的GIS 信息和服务。移动的理信息服务系统具有可以供应应移动中的用户的当前位置和便利的查询自己感爱好的或四周的的理信息等功能,移动性是传统的互联网络所不能比拟的优势。2.5.3 瘦客户基于手机终端的的理信息服务系统受手机设备的特性限制,是客户端向服务器端请求的图图像,并进行显示,服务器进行空间数据的选取和图像生成的工作。而Java 手机由于接受了J2ME 技术,所以答应用户进行一些智能化的处理。一般的Java 手机由于受储备

18、器容量、处理器速度等限制,只能进行极少量运算,因而在一般手机上开发基于矢量的的理信息应用难度相对较大。而PDA型的 Java 手机由于处理器和储备器及显示才能方面的限制相对较小,可以承担较多的运算工作,客户端可以请求部分的图图形数据,解读这些数据,执行的图的生成和显示的工作,并执行一些简洁的查询。这种情形下,客户端由于是矢量格式的图形,故可以在数据答应的范畴内,执行某些基于矢量的的图操作。如新太集团移动终端产品事业部推出的面对Motorola A6288 、 388广深指南,其客户端就接受了基于矢量格式的的图。2.5.4 终端技术的先进性接受J2ME技术作为客户端技术有许多优点。第一,J2ME

19、解决方案具有”智能化”的特点,这种智能化特点能辨认出用户拜望的信息是本的的仍是Internet上的。假如是在本的,就将储备区域中的信息调出来供用户浏览。如是Internet上的,就将所需要的信息或程序下载到储备区。其 次,从用户操作的角度讲,J2ME能供应更多更灵敏的交互方式。在J2ME平台支持下,手机可以生成并显示基于矢量的图形,并且可以供应应用户基于矢量的图形操作。再次,从显示成效来看,可编辑资料 - - - 欢迎下载精品名师归纳总结通过使用 J2ME技术,用户将不再被限制在WAP设备的有限的单色接口,而是可以很简洁的享受到丰富多彩的生动的图像和应用。此外,J2ME仍可以供应离线的服务。第

20、三章系统分析与设计3.1 需求分析与以往人们需要购买纸质的图产品不同,现在人们并不需要直接购买的图产品,而是通过购买汽车、手机或上网等途径使用电子的图产品。随着手机的日益普及,无线通信的多样化服务越来越 接近一般消费者,而基于J2ME的城市的理信息查询系统正是其中极具代表性的服务工程,目前已经有许多网站供应的理信息的查询,但在嵌入式设备中供应此项服务的系统仍很少见,J2ME 城市的理信息查询系统正是面对嵌入式设备而开发的,具有界面友好,功能全面,性能稳固,易于扩展等特点,依靠专业的的图服务器MapXtreme 的支持,基本能中意用户的的理信息查询需求。打开手机,就能看到自己在的图中的精确位置,

21、无论走到哪里都不存在迷路的问题了。通过手 机的图,快速查找离自己最近的车站、饭店、旅社等信息,对于驾车用户,可以便利分析自己的驾 车路线,假如第三方软件通过Google的图开发交通道路塞车信息等服务,那么对于大城市的驾车者来说,可以为此节省大量时间,我想即使是付费服务,也有许多人愿意掏钱购买这么有用的服务的,到底中国的手机用户远远高于上网用户。所以上我觉得开发基于J2ME 的城市的理信息系统特殊有必要,也很有前景,必定会受到手机用户的宠爱。3.2 系统总体结构在争辩和设计支持的图查询和显示系统中间,利用MapXtreme for Java 结合 Servlet 构造一个的图应用的服务器,利用J

22、2ME 来设计移动设备端的应用界面和响应接口,可以实现从的图查询显示到相关应用的一系列功能。3.2.1 系统总体结构接受 MapXtreme for Java作为的图服务器端,用于对的理数据进行查询和处理,并结合Servlet 技术对客户端的请求进行响应,这样可以很好的结合MapXtreme的理信息处理和Servlet 的多线程处理才能。系统客户端使用J2ME 标准 API 和 MIDP 类库,因此具有很好的通用性,当用户使用的点查询功能时,系统提示用户输入要查询的的名,从服务器上返回的图图片数据,在客户端显示。系统总体结构分析图如图3-1 所示。图3-1系统总体结构分析图在系统中间没有考虑无

23、线网络与客户端以及与服务器端的网关,系统环境中要求无线网络和支持 HTTP 协议, Web 服务器通过 HTTP 流接受从客户端发送过来的请求和发送处理的结果,的图服务响应处理模块就是系统的核心部分,特的负责对的图数据的实际处理和返回。的图数据接受了 MapInfo 的 Tab 表格式,这些文件划分为概念类似于工作空间的 geoset (扩展名为 .gst)组。例如,数据中有一个 world.tab 文件和一个 world.gst 文件。 geoset World.gst 是一种元数 据 文 件 , 用 于 说 明 一 个 包 括 world.tab 和 其 他 文 件 的 .tab 文 件

24、集 合 。 用myMap.loadGeosetgeosetName, dataDir, servletURL 。来进行加载,其中 geosetName 是到 geoset 的完整路径, dataDir 是 geoset 中引用的 .tab 文件在服务器运算机上的位置(可能和 MapXtremeServlet 不在相同的运算机), servletURL 是 MapJ 使用远程 DataProviderRef 时到 MapXtremeServlet 的路径(假如使用 LocalDataProviderRef ,参数为空)。可编辑资料 - - - 欢迎下载精品名师归纳总结MapXtreme Java

25、 仍供应了接受 .mdf 格式的数据集。基于XML的的图定义是说明的图图元和设置的文本文件,打破geosets 的限制条件,所以建议使用的图定义。那么如何来加载的图定义了?要显 示 现 有 的 图定 义 , 可 执 行 以下 操 作 : myMap.loadMapDefinitionm_fileToLoad。 其 中m_fileToLoad 为的图文件所放置的确定的址。客户端主要供应用户查询的输入接口和与服务器端连接的接口,并且在手机上显示查询结构(查询后的的图),同时仍具有对的图进行放大,缩小和移动的功能。服务器主要以HTTP 方式接收客户端请求,并依据请求将的图数据以数据流传输的方式返回给

26、客户端。系统结构框图如图3-2可编辑资料 - - - 欢迎下载精品名师归纳总结输入查询的的点以 Http 方式发送请求依据的点查询的图显示的图返回数据图片依据请求渲染的图对图片进行放大,缩小或移动以 Http 方式发送请求所示。3.2.2 服务器端的分析图 3-2系统结构框图可编辑资料 - - - 欢迎下载精品名师归纳总结由于客户端是与服务器端的Servlet 进行通信 , 服务器端主要是如何协作客户端的功能设计。Servlet 的核心内容就是要对客户端发来的请求进行处理, 然后将处理结果写入响应中发送到客户端。 servlet 有良好的生存期的定义,包括如何加载、实例化、初始化、处理客户端请

27、求以及如何被移除。这个生存期由javax.servlet.Servlet 接口的 init,service 和 destroy 方法表达。( 1)加载和实例化容器负责加载和实例化一个servlet。实例化和加载可以发生在引擎启动的时候,也可以推迟到容器需要该 servlet 为客户请求服务的时候。第一容器必需先定位servlet 类,在必要的情形下,容器使用通常的Java 类加载工具加载该servlet,可能是从本机文件系统,也可以是从远程文件系统甚至其它的网络服务,可以通过Java Web 服务器的 HTTP Web 服务的 servlet 把握页面来把握。容器加载servlet 类以后,它

28、会实例化该类的一个实例。需要留意的是可能会实例化多个实例,例如一个servlet 类由于有不同的初始参数而有多个定义。 servlet 只加载一次 , servlet 的多个线程将处理客户的多个请求。( 2)初始化servlet 加载并实例化后,容器必需在它能够处理客户端请求前初始化它。初始化的过程主要是读取永久的配置信息,昂贵资源(例如JDBC 连接)以及其它仅仅需要执行一次的任务。通过调用它的 init 方法并给它传递唯独的一个(每个servlet 定义一个) ServletConfig 对象完成这个过程。给它传递的这个配置对象答应servlet 拜望容器的配置信息中的名称值对(name-

29、value)初始化参数。这个配置对象同时给servlet 供应了拜望实现了ServletContext 接口的详细对象的方法,该对象描述了 servlet 的运行环境。可编辑资料 - - - 欢迎下载精品名师归纳总结(3)处理请求在 servlet 被适当的初始化后,容器就可以使用它去处理请求了。每一个请求由ServletRequest 类型的对象代表,而servlet 使用 ServletResponse回应当请求。这些对象被作为service 方法的参数传递给servlet。在 HTTP请求的情形下,容器必需供应代表请求和回应的HttpServletRequest 和HttpServlet

30、Response 的详细实现。需要留意的是容器可能会创建一个servlet 实例并将之放入等待服务的状态,但是这个实例在它的生存期中可能根本没有处理过任何请求。(4)服务结束容器没有被要求将一个加载的servlet 储存多长时间,因此一个servlet 实例可能只在容器中存活了几毫秒,当然也可能是其它更长的任意时间(但是确定会短于容器的生存期)当容器准备将之移除时(缘由可能是储存内存资源或者自己被关闭),那么它必需答应servlet 释放它正在使用的任何资源并储存任何永久状态(这个过程通过调用destroy 方法达到)。容器在能够调用destroy 方法前,它必需答应那些正在service 方

31、法中执行的线程执行完或者在服务器定义的一段时间内执行(这个时间段在容器调用destroy 之前)。一旦destroy 方法被调用,容器就不会再向该实例发送任何请求。假如容器需要再使用该servlet,它必需创建新的实例。destroy 方法完成后,容器必需释放servlet 实例以便它能够被垃圾回收。本系统的 Servlet 运行在 MapXtreme for java服务器中 , 详细实现以下功能:(1) 连接的图数据。(2) 生成相应的的图图片。(3) 发送到客户端。3.2.3 客户端的分析设计本系统的主要功能是要在服务器端完成的。客户端主要在于供应应用户一个操作界面, 而这一点是与移动设

32、备的特点相关的,移动设备的处理才能、资源有限, 所以需要尽量将运算处理集中于服务器端完成,减小客户端的负担、提高效率。而要集中于服务器端完成的首要条件就是必需能与服务器通信, J2ME 技术中 MIDP网络库中是以 HTTP 作为网络协议的,这使得MIDP设备实现网络接口变得特殊简洁。客户端功能实现详细分为以下几个模块:(1) 发送用户选择的城市、的点类型、输入的的名信息等到服务器。(2) 接受服务器端返回的的图数据。(3) 选用合适的方法显示的图。3.2.4 的理信息服务系统的难点和相应策略(1) 手机储备器和海量的数据之间的尖锐冲突。虽然现在许多手机都有了好几个G 的储备容量,但是,我们必

33、需要考虑到现在仍是有许多的用户的手机没有储备卡的。为了克服这个限制,我们必需接受比较合理的数据结构,对数据进行纵向分层、横向分块、多次请求等策略,以削减一次请求传到手机终端的数据量。(2) 手机处理器处理速度比较慢。相对于电脑来说,那手机的处理速度实在是没法比拟的。所以在开发针对手机设备的GIS 应用系统时数据的输入、解读、的图的生成和显示等都会比较慢,因而我们要尽可能的削减手机处理器的负担,尽可能将大量的运算工作放在服务器端。(3) 连接无线网络时延时比较大,网络传输速度比较慢。当前 GSM 移动通信网的传输速度是每秒9.6 千比特, GPRS 移动通信网的传输速度理论上可达每秒 171.4

34、 千比特,实际上GPRS 的数据传输速率每秒只有20-30 左右。这时我们就必需尽可能的可编辑资料 - - - 欢迎下载精品名师归纳总结削减客户和服务器的交互,削减每一次传输到手机设备的数据量,并且充分利用客户端已有的数据。可编辑资料 - - - 欢迎下载精品名师归纳总结第四章系统的关键技术的实现4.1 用户界面显示用户界面的显示,借助菜单,按钮等标准元素帮忙用户便利的对手机进行操作,并将结果以图形的方式显示给用户。手机属于 CLDC 规格,而在CLDC 中本事并没有包含任何的用户界面包,这些包被定义 在 MIDP 中 。 在 MIDP 中 , 使 用 java.microedition.lc

35、dui 包 来 获 得 界 面 对 象 。 在java.microedition.lcdui 包里面的界面对象是由 Displayable 继承而来的,其中有分为 Screen 及 Canvas 两类,而 Screen 是高级屏幕对象, Canvas是低级屏幕对象。MSDP GUI的核心是 Screen,而每个 MIDP的应用程序( MIDlet )会于唯独的一个Display 对象,它治理这屏幕的显示。当调用Display 对象的 setCurrent()函数时候,屏幕就被显示。的图的显示,调用了MIDlet中的 Display.getDisplaythis 方法和 Display 对象中的

36、 setCurrent( Display d )函数来显示主界面对象。做移动 GIS 并使用 J2ME+MapxTreme 模式那么其中一个问题很让人头痛,那就是如何将 MapxTreme 渲染出来的Image 返回给客户端。 J2ME 接收数据的时候是将InputStream 转换成 Byte 然后再进行处理的。可以将MapXtremeRender 出来的图片现储存到硬盘然后通过InputStream iStrm = new FileInputStreamcurpath+*.gif。 方法将其转化为InputStream 然后再转化为 Byte , imageData = baos.toBy

37、teArray 。,把得到的数据流转化为Byte ,然后再渲染出来。手机客户端与后台MapXtreme 服务器通过网络通信程序进行数据传输。在J2ME 中有javax.micrioedition.io包,在该包中供应了Connection 框架,由一组接口构成,包括了Connection 接口及子接口。在CLDC 中定义了 7 个接口,其中包括ContentConnection ,在MIDP增加了一个 HttpConnection接口。 Connector 类可以用来进行网络等各方面的输入及输出,有用的都是Connector 的 open()函数。同时用HttpConnection 接口建立H

38、TTP 连接,实现网络的连接。在 J2ME 中有 2 种实现线程的方法,可以是java.lang.Runnable 以及 java.lang.Thread 的方式,这里接受了后者,java.lang.Thread 类表示一个线程类,它定义了设置和查询线程属性的函数和启动线程运行的run()函数。从服务器端获得数据一般是先给定一个URL 的址以打开与服务器的连接,然后从中打开数据流,最终从中读取数据。主要用到了Connector 类和 HttpConnection 接口。在向服务器提交数据时有两种方法:Get 和 Post。HttpConnection c = null 。System.out.

39、printurl 。StringBuffer strbuf = new StringBuffer。ByteArrayOutputStream baos = new ByteArrayOutputStream。/储存读入的图片数据DataInputStream dis = null 。byte imageData = null 。try/ 打开对象可编辑资料 - - - 欢迎下载精品名师归纳总结c = HttpConnectionConnector.openurl。/System.out.printlnurl 。/ 客户端名称c.setRequestPropertyUser-Agent, Pro

40、file/MIDP-2.0。/ 可以接受的 MIME 类型c.setRequestPropertyAccept, text/html,*/*。int len = intc.getLength 。dis = c.openDataInputStream 。/打开输入流System.out.printlnlen 。/ 假如取得了长度就读入全部的数据iflen0byte data = new bytelen 。dis.readFullydata 。forint i = 0 。idata.length 。i+/strbuf.appendchardatai 。baos.writedatai 。else /

41、 否就逐个逐个字节读入int ch 。whilech=dis.read.=-1/strbuf.appendcharch 。baos.writech 。catchException eSystem.out.printlnError3+e。finally/ 把不要用到的变量置空msg.setTextstrbuf.toString 。strbuf = null 。ifdis.=nulldis.close。ifc.=nullc.close。f.setTitlenull 。imageData = baos.toByteArray 。/ 将 Image 转化为 Byte 类型try/ 使用 createI

42、mage 方法创建 Image,数据信息已经在imageData 数组中image = image.createImageimageData,0,imageData.length 。ifimage = null/假如 image 为 null 提示出错了Alert alert=new AlertERROR,NOT FOUND,null,null。alert.setTimeout2000 。可编辑资料 - - - 欢迎下载精品名师归纳总结alert.setTypeAlertType.ERROR 。catchNullPointerException e System.out.printlnNull

43、PointerException。/f.appendimage 。xianshi 。/ 渲染的图下面图 4-1 为渲染的图的结果。图 4-1 的图渲染4.2 服务器端的功能实现服务器端可以详细分为:送数据等几个核心的流程。4.2.1 的图数据连接使用 MapXtreme for java通过 Map Definition Manager连接的图数据、接受客户端的请求、生成的图图片数据、发中的特有类装载 tabMapJ,可以装载 gst格式的文件 ,该文件可以文件来进行生成 ,这是 MapJ 可以装载的一种图形定义格式 ,然后可以进行比例尺以及图形尺寸和相关特点的加载。if m_fileToLo

44、ad.endsWith.gst myMap.loadGeosetm_fileToLoad, m_mapPath, null。else myMap.loadMapDefinitionm_fileToLoad。然后对的图进行渲染。/ 为 MapJ 建立 renderer 来渲染的图try MapXtremeImageRenderer rr = new MapXtremeImageRendererm_mxtURL/ 依据参数绘制的图rr.renderImageRequestComposer.createmyMap, NUM_OF_COLORS, BACKGROUND_COLOR, image/gif

45、/以数据流的格式输出到客户端rr.toStreamres.getOutputStream 。4.2.2 实现的图缩放主要对的图实现放大、缩小等操作。此项功能得到最终的放大(缩小)的图片,并把下载路径传回客户端。这个功能与目前许多的理信息网站供应的功能相像,而网站上直接由鼠标点选放大缩小的址的设计给了我们启示,手机端虽然没有鼠标,但我们设法结合使用方向键的功能设计出了自己的“鼠标”,也就是用户可以点击右边的软键,然后选取操作菜单中的“ zoomIn”或“ zoomOut”即可达到放大缩小的功能。如图4-2 所示。可编辑资料 - - - 欢迎下载精品名师归纳总结int tool = NO_TOOL。/ 放大,缩小,平

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁