Javascript 使用二维数组从MySQL中检索数据
我正在研究谷歌地图api v3代码 我在MySQL中保存了所有标记,我想检索这些标记并在地图上显示它们。我正在寻找一个代码来实现这一点,但我发现所有的代码都使用xml文件来保存检索到的数据。我的想法不同,我可以从MySQL检索数据并将其保存在二维数组中 我想知道这是不是一个坏主意,会使我的网站变慢 以下是我的代码中的一些部分: markersDAO.javaJavascript 使用二维数组从MySQL中检索数据,javascript,jsp,google-maps,google-maps-api-3,Javascript,Jsp,Google Maps,Google Maps Api 3,我正在研究谷歌地图api v3代码 我在MySQL中保存了所有标记,我想检索这些标记并在地图上显示它们。我正在寻找一个代码来实现这一点,但我发现所有的代码都使用xml文件来保存检索到的数据。我的想法不同,我可以从MySQL检索数据并将其保存在二维数组中 我想知道这是不是一个坏主意,会使我的网站变慢 以下是我的代码中的一些部分: markersDAO.java String searchQuery = "select * from map"; try {
String searchQuery = "select * from map";
try
{
//connect to DB
currentCon = ConnectionManager.getConnection();
stmt=currentCon.createStatement();
rs = stmt.executeQuery(searchQuery);
int i=0;
// if user does not exist set userExits to false
while (rs.next()){
m[i][0]=rs.getString(1);
m[i][1]=Double.toString(rs.getDouble(2));
m[i][2]=Double.toString(rs.getDouble(3));
i++;
}
}
catch (Exception ex)
{
System.out.println("Datamap failed 2: An Exception has occurred! " + ex);
}
return m;
googlemap.jsp
我认为你的想法可以很好地工作,我所做的是将数据保存在JSON对象上,在我生成一个包含所有标记信息的JSONArray并从Javascript函数中读取数据以在地图上创建标记之后,我所做的就是快速使用200个标记。 一些代码可以给你一些不同的想法:
JSONArray ajson = new JSONArray();
while(rset.next()){
JSONObject json = new JSONObject();
json.put("id_coord", rset.getString("IDCOORD"));
json.put("nombreequipo", rset.getString("MarkerName"));
json.put("lat", rset.getDouble(5));
json.put("long", rset.getDouble(6));
ajson.put(json);
}
关于javascript解析JSON
var data = JSON.parse(response);
for (var i=0; i<data.length; i++) {
displayLocation(data[i]);
}
var data = JSON.parse(response);
for (var i=0; i<data.length; i++) {
displayLocation(data[i]);
}
function displayLocation(location){
var latLng = new google.maps.LatLng(parseFloat(location.latitud), parseFloat(location.longitud));
var marker = new google.maps.Marker({
position: latLng,
map: map,
icon: imagen,
draggable: false,
visible: true,
title: location.nombreequipo
});
}