日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java arcgis server_ArcGIS Server Java 开发实战---自定义command

發布時間:2023/12/19 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java arcgis server_ArcGIS Server Java 开发实战---自定义command 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個文檔大家如果喜歡看英文,在ESRI的幫助里面就有。本文和ESRI的幫助文檔類似,當然,我寫的會加入自己的一些東西。

咱開發人員拿到一個開發平臺,當然是要用來開發的,而且我們最好把它改得面目全非,才能顯出開發人員我的水平所在。對于那些拿著模版生成一個web gis站點就去問客戶要錢的事情,對于一個有自尊的開發人員,一般是不屑做的。

所以,我們今天就講講如何自定義命令和工具,先說說自定義命令吧。

命令事實上是command,也就是平常所在html頁面里面的command,這些command里面就是命令按鈕。在我們的ArcGIS Server的Web ADF里面,command被用來做一些不用跟地圖交互的工作;比如縮放到全圖:你不需要跟地圖做任何交互,只要一按按鈕,地圖就縮放到全圖。其它用處,就靠大家去發揮想象了,相信大家在以后的項目中會經常用到。我們以一個例子作為說明:

package com.demo;

import javax.faces.event.ActionEvent;

import com.esri.adf.web.data.WebContext;

import

com.esri.adf.web.data.geometry.WebExtent;

import com.esri.adf.web.faces.event.MapEvent;

import

com.esri.adf.web.faces.event.MapToolAction;

public class MyFullExtent {

WebContext context;

public WebContext getContext() {

return context;

}

public void setContext(WebContext context)

{

this.context = context;

}

public void setFullExtent(){

try{

WebExtent

ex=context.getWebMap().getFullExtent();

context.getWebMap().setCurrentExtent(ex);

context.refresh();

}catch(Exception ex){

ex.printStackTrace();

}

}

}

這是無比簡單的一個command,簡單到我都不好意思發出來給大家看了。注意這個類沒有實現任何接口,也沒有擴展任何現有的類,除了祖宗Object。它有一個WebContext,從上面一個講座我們可以知道,這個類可是我們整個Web ADF的關鍵,有了它,可以得到所有的東西了。

這個類關鍵的方法是setFullExtent,里面的幾行代碼用來將地圖縮放到全圖,大家看看代碼應該就可以明白。

怎么進行部署呢?就像普通的managed bean一樣進行部署就可以了,打開jsf application的心臟faces-config.xml文件,在里面添加如下配置:

myFullExtent

com.demo. MyFullExtent

session

context

#{mapContext}

注意我們把web context作為一個屬性,用來初始化MyFullExtent,#{mapContext}指向了一個在faces-config.xml文件中定義的另外一個Bean,這個bean我們上次講座已經詳細解釋過了。這里說一句廢話,算是提醒一下,有請求過來的時候,先實例化這個類,然后再設置屬性,有的工程師想在實例化里面進行一些操作,就必要用webContext,會報告空指針錯誤,因為這個時候webContext屬性還沒有被設置。

類寫好了,也配置好了,怎么用呢,再給個例子:

action="#{myFullExtent. setFullExtent }" toolText="全圖顯示"

/>

自定義command就這樣完成了。

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的java arcgis server_ArcGIS Server Java 开发实战---自定义command的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。