您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關Geoserver中的CQL和ECQL如何理解,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
CQL(Common Query Language) 是一個由OGC創建的查詢語言,用在Catalogue Web服務上,不同于基于xml過濾的查詢方式,CQL使用類似文本語法的格式,具有很高的可讀性和適用性。
CQL有一些限制,比如不能過濾id查詢,查詢的時候,需要指明一個屬性才能進行比較操作。
基于以上原因, GeoServer提供了一個CQL的擴展語言,叫ECQL,ECQL移除了CQL中的一些限制,提供了類似SQL的比較方便的語言。
GeoServer支持在wms和wfs的請求中,使用CQL和ECQL,同時在sld(動態樣式設置)也能進行設置。
這就表示,在請求Geoserver的wfs和wms服務時,可進行過濾請求,返回過濾的數據結果;
以下為一個wms的請求,在添加過濾請求時,只需要在后邊添加對應的參數:
http://localhost:8080/geoserver/wms?
request=GetFeatureInfo
&service=WMS
&version=1.1.1
&layers=topp%3Astates
&styles=
&srs=EPSG%3A4326
&format=image%2Fpng
&bbox=-145.151041%2C21.73192%2C-57.154894%2C58.961059
&width=780
&height=330
&query_layers=topp%3Astates
&info_format=text%2Fhtml
&feature_count=50
&x=353
&y=145
&exceptions=application%2Fvnd.ogc.se_xml
//過濾所拼接的字符串
&cql_filter=INTERSECTS(the_geom,%20POINT%20(-74.817265%2040.5296504))
下邊是一個wfs的請求,也是根據參數在后邊過濾字段, 只需要在后邊添加對應的參數:
http://example.com/geoserver/wfs?
service=wfs&
version=2.0.0&
request=GetFeature&
typeNames=namespace:featuretype
cql_filter=INTERSECTS(the_geom,%20POINT%20(-74.817265%2040.5296504))
根據以上的過濾,就能控制地圖上顯示的數據信息,或者查詢的信息,查詢的時候需要根據服務進行請求。
看完上述內容,你們對Geoserver中的CQL和ECQL如何理解有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。