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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

ArcGIS Javascript查询数据库并添加到地图上

發布時間:2025/5/22 java 143 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ArcGIS Javascript查询数据库并添加到地图上 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

將數據存放到數據庫中,動態的調取比較靈活,數據變動后不需要改變圖層的屬性表。

此處采用的方法是通過jquery查詢數據庫,并將數據庫的結果生產json串返回給js,在js中動態解析json串增加點至地圖上

1、jquery調取查詢并處理json

1 var data = []; 2 function getData(vipstatus){ 3 data=[];//清空數據列表 4 $.get('getVIPStatus.jsp',{vipstatus:vipstatus},function(result){ 5 //alert(result); 6 var obj = JSON.parse(result);//將傳遞過來的json串轉換成json對象 7 $.each(obj, function(index){ 8 data.push(this); 9 }); 10 displayPoints(data);//加載點到地圖上,參見另外一篇文章 11 }); 12 }

說明6-9行需要對返回的json傳進行一個處理,因為傳過來的數據格式為

1 { 2 "id25" : { 3 "XMJSNR" : "30萬千瓦", 4 "ZRDW" : "xx市政府", 5 "XMMC" : "海上風電場H2", 6 "PROJECT_ID" : "ddafb1a4-668a-4b0c-85f0-081d90778e82", 7 "LONGITUDE" : "125.22222", 8 "LATITUDE" : "33.305264" 9 }, 10 "id24" : { 11 "XMJSNR" : "年產海洋生物營養保健品系列2萬噸、抗癌系列新藥1萬噸", 12 "ZRDW" : "xx市政府", 13 "XMMC" : "海洋生物營養保健品、抗癌新藥項目", 14 "PROJECT_ID" : "d26da381-e7ca-4ab7-8c9c-d09c2b242c27", 15 "LONGITUDE" : "124.55555", 16 "LATITUDE" : "33.30223" 17 } 18 }

而實際需要的是個json數組,如下:(此處應該可以改進,需要繼續優化)

1 [{"name":"name1","x":"x1","y":"y1","img":"img1","content":"content1"}...]

2、getVIPStatus.jsp

1 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2 <%@ page import="com.marost.tool.*,java.sql.*" %> 3 <%@ page import="java.util.Map,java.util.HashMap" %> 4 <%@ page import="org.json.JSONException,org.json.JSONObject" %> 5 <% 6 JDBConnection connection = new JDBConnection(); 7 String vipstatus = Chinese.toChinese(request.getParameter("vipstatus")); 8 //System.out.println(vipname); 9 JSONObject jsonObj = new JSONObject(); 10 11 String sql = "SELECT " + 12 "T_PROJECT_INFO.PROJECT_ID," + 13 "T_PROJECT_INFO.XMMC," + 14 "T_PROJECT_LOCATION.LONGITUDE,"+ 15 "T_PROJECT_LOCATION.LATITUDE," + 16 "T_PROJECT_INFO.XMJSNR," + 17 "T_PROJECT_INFO.ZRDW " + 18 "FROM T_PROJECT_INFO ,T_PROJECT_LOCATION " + 19 "WHERE T_PROJECT_INFO.XMZT = (select code from t_code where code_name='"+vipstatus+"' and SECTION_NAME='項目狀態') " + 20 "AND T_PROJECT_INFO.PROJECT_ID = T_PROJECT_LOCATION.PROJECT_ID"; 21 System.out.println(sql); 22 try { 23 ResultSet rs = connection.executeQuery(sql); 24 while (rs.next()) { 25 Map <String, String> ingredients = new HashMap <String, String>(); 26 ingredients.put("PROJECT_ID", rs.getString(1)); 27 ingredients.put("name", rs.getString(2)); 28 ingredients.put("x", rs.getString(3)); 29 ingredients.put("y", rs.getString(4)); 30 ingredients.put("XMJSNR", rs.getString(5)); 31 ingredients.put("ZRDW", rs.getString(6)); 32 ingredients.put("img","images/map_pin_fill_20.png"); 33 try { 34 jsonObj.put("id"+rs.getRow(), ingredients); 35 } catch (JSONException e) { 36 // TODO Auto-generated catch block 37 e.printStackTrace(); 38 } 39 //System.out.print(deptno+"\t"+dname+"\t"+loc); 40 //System.out.println(rs.getRow()); 41 } 42 //System.out.println(jsonObj); 43 } catch (SQLException e) { 44 e.printStackTrace(); 45 } 46 connection.closeConnection(); 47 response.getWriter().print(jsonObj); 48 %>

說明:生成json時用到org.json.jar

轉載于:https://www.cnblogs.com/marost/p/3670943.html

總結

以上是生活随笔為你收集整理的ArcGIS Javascript查询数据库并添加到地图上的全部內容,希望文章能夠幫你解決所遇到的問題。

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