`

ArcGIS SERVER JAVA为什么选择JSF

阅读更多
在正式开讲之前,我们来探讨一下为什么要使用JSF来实现SERVER ADF,这也是很多开发商跟我讨论时经常会问到的问题。

      世界上有300种Java的framework,这个数字是我几个月前听到的,现在可能已经不止这个数了。我曾经用过的framework包括Structs,Hibernate,Spring。这些framework不但能加速开发,而且会带来全新的程序设计理念。我当时的感觉是:原来程序还可以这样写! 当然,这些framework都是开源免费,你不用担心自己的良心受到谴责,也不用担心比尔盖茨半夜敲门收钱。

       在这300多种framework中,ESRI为什么选择了JSF?各个framework有各个framework的好处。JSF最大的优点就是:像 Swing 和 AWT 一样,JSF 是一个可以提供一组标准的、可重用的 GUI 组件的开发框架。

原因之一: 行为与表示的完全分离。

     行为和表现不分离的一个典型例子是普通的JSP 技术,这一技术很好,因为很容易在 HTML(和类 HTML)页面中混合 Java 代码。这样我们就可以使用强大的Java API的功能。当然,很明显的坏处是行为表现黏合在一起。而且代码不容易重用。这让我想起刚使用JSP技术时,在文本编辑器下写JSP页面,读写数据库,并且在同一个页面上显示出来的痛苦回忆。

      Model1架构的出现使开发人员可以用javabean的方式进行开发,舒服多了。当然,还有更好的。

      这就不得不提到著名的MVC结构,(MVC) model-view-controller架构提供了一系列的设计模式,这些模式让你可以轻松地应用于程序地开发,特别是有界面程序的开发。现在又有多少的程序是没有界面的呢?
  
      Model包装了商业逻辑,也包含了数据持久的代码,包括存取数据库或者存取文件。Model最好不要跟View有任何关系,它最好不要知道谁将显示结果,是一个Swing界面,还是JSF界面,还是普通的JSP界面。为了做到这一点,事先的规划要花一些时间,但是相信我,这些花的时间带来的价值将超过你的想象。如果设计得当,许多用ArcGIS Engine开发的代码可以轻松在Server中使用,不需要修改任何代码。.net也是一样。

      View只用来显示显示逻辑,不能有任何商务逻辑。controller是view和model的桥梁,它和model进行交互,并且把结果显示在Model中。显示页面的选择也由controller进行选择。我会在后面的讲座中详细解释JSF中的Controller的实现。

       Structs,Spring都实现了MVC的架构。但是它们都没有像JSF这样,提供一个事件驱动的组件对象模型。大家可以想一想,一个平常在HTML中使用的标签,     <input type="text" name="q">,在JSF框架中变成了一个组件,这个组件还可以有事件,而且可以对这个事件可以进行编程。这是多么得激动人心啊! GIS程序需要和用户进行良好地交互,选择一个事件驱动的framework,可以更加容易编程和实现。

    这是ESRI选择JSF的重要原因之一。<转>
分享到:
评论
1 楼 jiyanliang 2008-06-06  
原创?不是吧!

相关推荐

    ArcGIS+Server+Java讲座

    1、前言------为什么我们选择JSF,而不是其它framework 1 2、ArcGIS Server Java开发 JSF基础 2 3、ArcGIS Server Java ADF开发的JSF知识介绍 5 4、ArcGIS Server 开发初步 -- 自定义工具 7 5、使用图片和TrueType...

    arcgis server java

    总结,ArcGIS Server Java ADF结合了JSF的强大UI构建能力,为开发者提供了一个全面的工具集,以构建与GIS紧密集成的Java应用程序。通过理解和熟练运用JSF以及ADF,开发者可以创建出高效、用户友好的GIS解决方案,...

    ArcGIS_Server_Java_ADF_案例教程

    尽管有些人可能不关心为什么选择JSF,但理解所用技术的基础框架及其背后的原则对于深入学习和应用ArcGIS Server Java ADF来说是相当重要的。 ### 知识点三:JSF框架的特点与优势 JSF框架一个重要特点就是它能将...

    arcgis server for java

    5. **Web应用程序开发**:ArcGIS Server for Java可以与Web应用程序框架如Spring、Struts或JavaServer Faces (JSF)结合,构建GIS Web应用。这些应用可以使用WebContent目录中的HTML、CSS和JavaScript文件与服务器端...

    arcgis server9.3案例(jsf)1

    【arcgis server9.3案例(jsf)1】是一个关于使用ArcGIS Server 9.3进行Web GIS开发的实例,其中结合了Java Server Faces (JSF)技术。ArcGIS Server是Esri公司的一款强大的地理信息系统(GIS)服务器产品,它能够提供...

    \ArcGIS Server Java讲座

    1. **为什么选择JSF**:在众多Java框架中,Esri选择了Java Server Faces (JSF)作为开发ArcGIS Server ADF的首选框架。JSF的优势在于其组件化和MVC(模型-视图-控制器)架构,实现了行为与表示的完全分离,提高了代码...

    arcgis server java讲座

    【ArcGIS Server Java 开发】是一项复杂而深入的技术...总的来说,这个ArcGIS Server Java讲座涵盖了从基础的JSF框架到高级的自定义开发和SOA集成,为开发者提供了全面的指导,帮助他们构建高效、可扩展的GIS应用程序。

    arcgis server 9.3 案例(jsf)3

    在9.3版本中,ArcGIS Server提供了一个灵活的平台,支持多种应用程序接口(API),包括JavaServer Faces(JSF)。本案例将深入探讨如何利用JSF构建与ArcGIS Server 9.3交互的应用程序。 1. **ArcGIS Server 9.3的...

    [feiq]ArcGIS Server Java讲座.doc

    1. **为什么选择JSF**: - 在众多的Java框架中,ESRI选择了JSF,因为JSF提供了一套标准的GUI组件,能够实现行为与表示的完全分离。这种分离使得代码更易于维护和重用,避免了如JSP中Java代码与HTML混杂的问题,提高...

    arcgis server9.3 案例(jsf)2

    6. **地理编码和地理处理**: ArcGIS Server提供了地理编码服务(将地址转换为坐标)和地理处理服务(执行空间分析任务),JSF应用可以利用这些服务进行地址查找或复杂的空间计算。 7. **数据交互与安全性**: 学习...

    ArcGIS Server Java ADF案例教程

    ArcGIS Server Java ADF案例教程深入探讨了GIS开发中的关键技术点,从JSF基础到自定义Functionality,从地图操作到WebService集成,为开发者提供了一条清晰的学习路径。通过实践这些案例,开发者不仅能够掌握ADF的...

    基于java的arcgis server开发

    【基于Java的ArcGIS Server开发】系列讲座主要探讨了如何使用Java进行ArcGIS Server的开发,特别是结合JavaServer Faces (JSF)框架。选择JSF的原因在于其独特的优点,包括行为与表示的分离以及事件驱动的组件模型。 ...

    ArcGIS Server Web ADF Java应用开发

    在本课程中,我们将深入探讨如何使用Java平台开发与ArcGIS Server交互的应用程序,特别是关注ArcGIS Server Web ADF(应用程序开发框架)的Java应用开发。ArcGIS Server是ESRI提供的一个全面的地理信息系统(GIS),...

    ArcGIS Server Java ADF 案例教程.pdf

    - **ADF选择JSF的原因**:ADF(Application Development Framework)之所以选择JSF(JavaServer Faces)作为其前端技术栈的一部分,主要是因为JSF提供了一套强大的用户界面组件库以及一套易于使用的模型视图控制器...

    ArcGIS Server的ADF

    2. 为什么选择JSF 选择JSF作为ADF的底层技术有两个主要原因。首先,JSF提供了一种事件驱动的组件对象模型,允许开发者轻松地创建交互式的GIS应用程序。其次,JSF提供了多个事件驱动的GUI控件,例如command button,...

    ArcGIS Server 9.2帮助文档翻译(1)Simple ArcGIS Server Web ADF Java Platform Application

    ArcGIS Server 9.2相关的Web ADF Java Platform应用程序都是基于JavaServer Faces (JSF)框架构建的,用于创建互动式、地图驱动的Web应用程序。JSF是一个标准的Java EE组件模型,它允许开发者构建用户界面并与后端...

    基于java的arcgis_server开发

    总的来说,基于Java的ArcGIS Server开发是一个深度结合GIS技术、Web服务和Java编程的领域,JSF作为开发工具,通过其强大的组件系统和事件处理能力,为构建高效、可维护的GIS应用提供了有力支持。开发者可以通过学习...

    ArcGIS server 9.3培训

    总的来说,这个培训涵盖了ArcGIS Server 9.3在Java环境下的基础和高级开发技术,包括环境配置、Web应用的创建、Web ADF的使用以及自定义功能的实现,为开发者提供了全面的技能训练,以便于他们在GIS领域构建高效、...

Global site tag (gtag.js) - Google Analytics