调用百度地图API实例
2013-03-01 10:54
134 查看
百度地图API还是很有用的,尤其是在国内环境下
需要注意的是字符编码问题
需要注意的是字符编码问题
package com.cldknw.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.params.HttpMethodParams; import com.cldknw.place.PlaceInfo; import com.google.gson.Gson; public class MapHelper { private static HttpClient client = new HttpClient(); private static final String prefix = "http://api.map.baidu.com/geocoder?location="; private static final String key = "ba376eda799ae16ffb8492c9b44af443"; private static Gson gs = new Gson(); public static PlaceInfo getPlaceInfoByLatAndLng(double lat,double lng) throws HttpException, IOException{ String uri = prefix+lat+","+lng+"&output=json&key="+key; GetMethod get = new GetMethod(uri); get.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 5000); // client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8"); int status = client.executeMethod(get); if(status != 200) return null; StringBuffer jsonReturn = new StringBuffer(); // BufferedReader br = new BufferedReader(new InputStreamReader(get.getResponseBodyAsStream(),"UTF-8")); BufferedReader br = new BufferedReader(new InputStreamReader(get.getResponseBodyAsStream())); String s = ""; while((s = br.readLine())!=null){ jsonReturn.append(s); } System.out.println(jsonReturn.toString()); return gs.fromJson(jsonReturn.toString(), PlaceInfo.class); } public static void main(String args[]){ try { PlaceInfo pi = getPlaceInfoByLatAndLng(39.983424,116.322987); System.out.println(pi.getResult().getFormatted_address()); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
相关文章推荐
- Geolocation---HTML5调用百度地图API进行地理定位实例
- 百度地图API调用实例之地址标注与位置显示
- 百度地图api的调用实例
- HTML5调用百度地图API进行地理定位实例 ,定位当前位置
- HTML5调用百度地图API进行地理定位实例
- 百度地图API JS调用实例
- 百度地图API调用实例
- HTML5调用百度地图API进行地理定位实例
- HTML5调用百度地图API进行地理定位实例
- Geocoding java调用百度地图API v2.0 图文 实例( 解决102错误)
- Sql建立自定义函数(函数和调用实例)
- vue项目中调用百度地图API使用简介
- 使用java反射中的getMethod,invoke方法调用对象方法的实例
- jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码
- matlab2010 + vc6.0混合编程实例(调用dll)
- 通过小实例谈谈javascript的间隔调用和延时调用
- C# WebSevice搭建与调用实例
- HTML5页面调用百度地图API,获取当前位置并导航到目的地
- 利用反射来动态创建实例和调用方法
- jax-ws服务端生成和客户端调用实例详解