我正在使用 Java EE 开发一个 Web 应用程序,该应用程序从 MySql 数据库中获取人员的地址并在 Google 地图上显示他们的位置。
目前我正在手动进行,因为我不知道如何在 JSP 中集成 Google 地图。请给我一些使用 Java 的指导。
我正在使用 Java EE 开发一个 Web 应用程序,该应用程序从 MySql 数据库中获取人员的地址并在 Google 地图上显示他们的位置。
目前我正在手动进行,因为我不知道如何在 JSP 中集成 Google 地图。请给我一些使用 Java 的指导。
首先,从数据库中获取所有地址的列表,然后使用谷歌地理编码器服务,获取这些地址的经纬度。这是示例代码(http://code.google.com/p/gmaps-samples/source/browse/trunk/geocoder/java/GeocodingSample.java?r=2476)。然后你可以在地图上创建谷歌地图标记。这里是示例代码http://www.paulwest.co.uk/article.php/using-google-maps-api-to-mark-your-location-and -地址
希望能帮助到你。
嘿伙计们,这段代码最终帮助了它,感觉非常高兴,非常感谢::
<sql:setDataSource var="enterdata"
driver="com.mysql.jdbc.Driver"
user="root" password="root"
url="jdbc:mysql://localhost/enterdata" />
<sql:query var="list" dataSource="${enterdata}"
sql= "SELECT * from cropdata where FarmerName=\"${param.FarmerName}\"" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js? sensor=false"></script>
<script type="text/javascript">
var markers = [<c:forEach var="s" items="${list.rows}">
['Farmer Name :${s.FarmerName}<br>Crop Type:${s.CropName}',${s.Latitude},${s.longitude}],
</c:forEach>
];
function initializeMaps() {
var latlng = new google.maps.LatLng(markers[0][1],markers[0][2]);
var myOptions = {
zoom: 18,
center: latlng,
mapTypeId: google.maps.MapTypeId.SATELLITE,
mapTypeControl: false
};
var map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);
var infowindow = new google.maps.InfoWindow(), marker, i;
for (i = 0; i < markers.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(markers[i][1], markers[i][2]),
map: map
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(markers[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
}
}
首先,应该使用一个servlet。此 servlet 从数据库中获取数据并将其转换为 json 格式。
并且使用 ajax,获取 json 数据,然后使用 Google map JavaScript API。