/***********本人原创,欢迎转载,转载请保留本人信息*************/
作者:wallimn
电邮:wallimn@sohu.com
博客:http://wallimn.bokee.com
   http://blog.csdn.net/wallimn
网络硬盘:http://wallimn.gbaopan.com
时间:2007-04-03
/***********本人原创,欢迎转载,转载请保留本人信息*************/

  好久没有写文章了,今天来写篇简介式的文章。
  最近用Mapxtreme4.71 for java开发了个东西,对Mapxtreme有了一些了解,写在这里与大家分享一下。
  使用Mapxtreme开发,首要的问题就是三种类型(胖、瘦及中型)客户端的选择,书上好象用了两三页的篇幅介绍它们的区别、优点及缺点。开始我对它们有些困惑,看了几遍也不太明了。鉴于软件中,胖客户端的例子比较完全,开发好象比较容易,在我的项目中就选择了胖客户端模式。

  胖客户端开发确实比较容易,Mapxtreme提供了大量的API,简单的堆砌一下代码,功能就差不多了。但在下载N多的JAR包(也就是Mapxtreme提供的API)下载到客户端,大概算了一下,约有5M左右。而且对于工具条的控制、修改有些不便、地图在框选的时候一直闪烁,这两条可能是我对Mapxtreme掌握不够深入造成的。

  通过边开发,边学习,后来对不同类型的客户端的区别终于明白了,所谓胖客户端,就是在APPLET里直接调用Mapxtreme提供的API,编程虽然简单(不过要熟悉大量Mapxtreme提供的API,理清N多包、类的功能及它们的联系,这是一个比较漫长的过程),这种客户端体积当然比较臃肿,因此就叫胖客户端了。呵呵。 而对于瘦客户端及中型客户端,其本质差别不大,如果你能够使用javascript在浏览器中画圆、画折线及画矩形(使用微软的only for IE的VRL,好象是这个,有点记不清了。不过我很不喜欢仅IE使用的技术方案)能够灵活地进行各种图上操作,应该优先选择使用瘦客户端。选用中型客户端,可以在APPLET里,使用JAVA来进行一些JAVASCRIPT很不好进行的图上操作。由于客户端仅使用AWT或者SWING,此时的客户端是比较小巧的。对于客户而言是比较容易接受的。
  但对于中型客户端及瘦客户端,即要开发服务器端的servlet,又要写客户端的JAVA或者JAVASCRIPT代码,来响应客户端的请求。幸运的是,这对于稍有编程经验的人,不是一件难事。我在开发中,先使用了胖客户端的方案,后来又使用中型客户端。在使用中型客户端方案开发的时候,客户端开发要熟悉SWING或者AWT、JAVA的事件处理;服务器端的servlet,要仅同MapJ等很少几个类打交道就可以了,书上说MapJ的API是比较低级难用的,事实上我觉得还好,因为涉及到的类比较少而显得比较好掌握。

  中型客户端的servlet完全可以在瘦客户端方式中重用,此时对于客户端的开发,工作量就转移到了javascript代码的编写,javascript调试可以使用.NET,实现起来也不是太困难。

  所以,新接触Mapxtreme的网友,我推荐使用中型客户端的方式来开发系统。

Mapxtreme中的胖客户端、瘦客户端及中型客户端介绍相关推荐

  1. 微信是胖客户端瘦服务器,一款管理微信客户软件的系统体系结构设计?

    泛普管理微信客户软件的客户应用程序精简到一个通用的浏览器软件.第二层Web服务器将启动相应的进程来响应客户的请求,并动态生成一串HTML代码,其中嵌入处理的主机终端模式由于硬件选择有限,硬件投资得不到 ...

  2. 微信是胖客户端瘦服务器,何为瘦客户端、胖客户端和富客户端?

    瘦客户端(Thin Client): 指的是在客户端-服务器网络体系中的一个基本无需应用程序的计算机终端. 它通过一些协议和服务器通信,进而接入局域网.作为应用程序平台的Internet的到来为企业应 ...

  3. Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍

    本文主要内容: 1.FTP服务端部署---- 基于Android中SwiFTP开源软件介绍: 2.FTP客户端部署 --- 基于ftp4j开源jar包的客户端开发 : 3.使用步骤 --- 如何测试我 ...

  4. Maven中的打胖包瘦包

    maven工程中的胖包与瘦包的区别在于:一.文件大小,胖包往往是瘦包的很多很多倍:二.胖包中自带依赖,瘦包中没有,所以胖包到哪里都能用,而要使用瘦包必须引用的工程中自带依赖才行 第一步:在maven的 ...

  5. Openstack技术\在Docker容器中部署MySQL,并通过外部mysql客户端操作MySQL Server

    MySQL部署 在Docker容器中部署MySQL,并通过外部mysql客户端操作MySQL Server. 操作步骤: 搜索mysql镜像 拉取mysql镜像 创建容器 操作容器中的mysql 容器 ...

  6. linux安装telnet客户端_Redis 6.0 的客户端缓存是怎么肥事?一文带你了解!

    来源 | 程序员历小冰责编 | Carol封图 | CSDN 付费下载于视觉中国近日 Redis 6.0.0 GA 版本发布,这是 Redis 历史上最大的一次版本更新,包括了客户端缓存 (Clien ...

  7. swoole mysql 协程_Swoole 协程 MySQL 客户端与异步回调 MySQL 客户端的对比

    Swoole 协程 MySql 客户端与 异步回调 MySql 客户端的对比 为什么要对比这两种不同模式的客户端? 异步 MySQL 回调客户端是虽然在 Swoole 1.8.6 版本就已经发布了, ...

  8. AP1242G胖转瘦,廋转胖

    无线AP1242G胖转瘦 准备工作:console线接上,网线接上. ap>en password:Cisco ap#config t ap(config)#inter BVI1 可以在BVI1 ...

  9. Java服务端向客户端写文件_java实现客户端向服务器发送文件

    本文实例为大家分享了java实现客户端向服务器发送文件的具体代码,供大家参考,具体内容如下 服务器源代码: import java.io.BufferedReader; import java.io. ...

最新文章

  1. Django 视图URLconf3.1
  2. 3NF分解与BCNF分解
  3. 今天参加面试 上机题,整理一下
  4. Android属性之build.prop生成过程分析
  5. 钱老,外国人能搞的,今天中国人也能搞了!
  6. 计算机应用技术试卷在线老师,试卷,计-计算机应用技术.pdf
  7. Maven学习总结(21)——Maven常用的几个核心概念
  8. 查看xenapp 6.5 LIC版本
  9. gitlens突然不显示了_监控画面突然没有了怎么办?监控画面不显示了?
  10. 【stm32开发日志】步进电机、直线模组、丝杆的接线、编程与使用
  11. 迈高图手机版_迈高图下载-迈高图最新版下载[地图软件]-天极下载
  12. IAPP视频教程全集
  13. 常见视频封装格式(1) — AVI
  14. WPF 加载PDF文件
  15. ArcGIS根据矢量图层范围裁剪影像
  16. 微信电脑版多用户登录
  17. APK保护技术——保护应用、游戏APP不被破解
  18. 基于RK3568商显版开源鸿蒙板卡产品解决方案
  19. 做一个网站一般需要多少费用
  20. 计算机硬件经常使用十六,[单选,A型题] 桂枝在桂枝加桂汤、桂苓五味甘草汤中的主要作用是()...

热门文章

  1. Exchange 20002003书籍教程下载和资源总汇
  2. 按头安利 好看又实用的文物 古董cc0高清摄影图片素材看这里
  3. 用python自制一款背单词程序
  4. 【Java学习之代码学习】 Prog09_整数分解因式
  5. 【架构设计】冷备/热备/温备、水平扩展/垂直扩展、弹性扩容
  6. APoT ADDITIVE POWERS-OF-TWO QUANTIZATION: AN EFFICIENT NON-UNIFORM DISCRETIZATION FOR NEURAL NETWORK
  7. 想做游戏开发?Unity3D值得你了解一下!
  8. VLAN-3-VLAN Trunk:ISL和802.1Q
  9. PHP打一动物,天赐良缘是什么动物 打一生肖
  10. layui时间选择30分钟为单位_第二天高开的大牛股是怎样选出来的?尾盘30分钟才是最好的选股时机,掌握你也可以选出第二天大牛股...