JAVA 对接腾讯地图,经纬度转换
package com.lvjing.util; import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.stereotype.Service; import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.HashMap;
import java.util.Map; /**
* \* Created with IntelliJ IDEA.
* \* User: 46512
* \* Author:ZY
* \* Date: 2018/7/24
* \* To change this template use File | Settings | File Templates.
* \* Description:
* \
*/
@Service
public class GPSTranslate { // key,需要在腾讯地图申请一个KEY
private static final String KEY = ""; /**
* @Description: 通过经纬度获取位置
* @Param: [log, lat]
* @return: java.lang.String
* @Author: zy
* @Date: 2018/7/24
*/
public static Map<String, Object> getLocation(String lng, String lat) { Map<String, Object> resultMap = new HashMap<String, Object>(); // 参数解释:lng:经度,lat:维度。KEY:腾讯地图key
String urlString = "http://apis.map.qq.com/ws/coord/v1/translate?locations=" +
lat + "," + lng +"&type=1"+"&key=" + KEY ; String result = "";
try {
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
// 腾讯地图使用GET
conn.setRequestMethod("GET");
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
String line;
// 获取地址解析结果
while ((line = in.readLine()) != null) {
result += line + "\n";
//System.out.println(result);
}
in.close();
} catch (Exception e) {
e.getMessage();
} // 转JSON格式
JSONObject jsonObject = JSONObject.fromObject(result);
//System.out.println(jsonObject);
// 获取地址(行政区划信息) 包含有国籍,省份,城市
JSONObject a = new JSONObject();
//String code = jsonObject.getString("locations");
String locations = jsonObject.get("locations").toString();
//System.out.println(locations); JSONArray jsonArray = jsonObject.getJSONArray("locations");
//System.out.println(jsonArray.getJSONObject(0).get("lat"));
String lat_result = jsonArray.getJSONObject(0).get("lat").toString();
String lng_result = jsonArray.getJSONObject(0).get("lng").toString(); resultMap.put("lat", lat_result);
resultMap.put("lng", lng_result); return resultMap;
} public static void main(String[] args) {
// 测试
String lat = "30.287574000";//维度
String lng = "120.07875200";//经度 Map<String, Object> map = getLocation(lng, lat);
System.out.println(map);
System.out.println("la:" + map.get("lat"));
System.out.println("lo:" + map.get("lng"));
}
}
JAVA 对接腾讯地图,经纬度转换的更多相关文章
- 百度地图经纬度转换JS版
//百度地图的坐标转换,由于百度地图在GCJ02协议的基础上又做了一次处理,变为 BD09协议的坐标,以下是坐标的转化方式,可以方便和其他平台转化 jQuery.MapConvert = { x_pi ...
- PHP CURL根据详细地址获取腾讯地图经纬度
<?php $address = "广东省广州市天河区"; $point = getPoint($address); var_dump($point);//输出经纬度 /** ...
- 地图API使用文档-以腾讯地图为例
目录 腾讯地图API 2 1.API概览... 2 1.1 WebService API(官网注明是beta版本,可能不稳定,慎用):... 2 1.2 URL API:... 2 1.3 静态图AP ...
- js不同地图坐标系经纬度转换(天地图,高德地图,百度地图,腾讯地图)
1.js转换代码 1 //转换常数 2 var x_pi = 3.14159265358979324 * 3000.0 / 180.0; 3 var pi = 3.14159265358979324; ...
- JAVA使用经纬度通过腾讯地图API获取详细地址
官方文档:https://lbs.qq.com/service/webService/webServiceGuide/webServiceGcoder package com.weixin.map; ...
- 微信小程序wx.getLocation()获取经纬度及JavaScript SDK调用腾讯地图API获取某一类地址
简介 腾讯位置服务为微信小程序提供了基础的标点能力.线和圆的绘制接口等地图组件和位置展示.地图选点等地图API位置服务能力支持,使得开发者可以自由地实现自己的微信小程序产品. 在此基础上,腾讯位置服务 ...
- [微信小程序] 微信小程序获取用户定位信息并加载对应城市信息,wx.getLocation,腾讯地图小程序api,微信小程序经纬度逆解析地理信息
因为需要在小程序加个定位并加载对应城市信息 然而小程序自带api目前只能获取经纬度不能逆解析,虽然自己解析方式,但是同时也要调用地图,难道用户每次进小程序还要强行打开地图选择地址才定位吗?多麻烦也不利 ...
- 地图经纬度坐标与屏幕坐标的转换(android版)
我们在开发GIS系统的时候,首先要解决的就是地图的可视化问题,这个问题的关键就在于如何把地图的坐标转换成屏幕坐标,然后才到渲染着色.标注等.以下以wgs84经纬度坐标为基准,介绍一下地图经纬度坐标与屏 ...
- js 根据固定位置获取经纬度--腾讯地图
1.首先引入jq 和 腾讯地图js <script src="../js/jQuery.js"></script> <script charset=& ...
随机推荐
- 摩羯座Capricornus
Capricornus 摩羯座的人通常会如何拒绝别人. 摩羯座的人做事脚踏实地,比较固执,忍耐力也是出奇的强大,同时也非常勤奋.他们心中总是背负着很多的责任感,但往往又很没有安全感,不会完全地相信别 ...
- 简易OA漫谈之工作流设计(五,直接上级)
规则引擎里比较复杂的问题就是:配置步骤的审批人. 某一个步骤由谁来审批,有很多复杂情况: 1.指定某一个具体的人.这种通常用于一些特殊的岗位,全公司只有一个,比如小公司里的财务,人事专员等. 2.指定 ...
- 【转】IIS请求筛选模块被配置为拒绝超过请求内容长度的请求
HTTP错误404.13 - Not Found 请求筛选模块被配置为拒绝超过请求内容长度的请求,原因是Web服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值(IIS 7 默认文件上传大 ...
- mysql 插件相关命令
# 查看mysql的插件 show plugins \G # 安装mysql 插件 INSTALL PLUGIN spartan SONAME 'ha_spartan.so'; # 卸载 UNINST ...
- python2.x 与 python3.x的不同
python2.x 与 python3.x 的区别: 1. python2.x 的源码编码不规范,源码重复较多:python3.x 的源码编码规范,清晰.优美.简单 2. python2.x的默认字符 ...
- fastjson对象转为json字符串日期格式变为时间戳问题
今天尝试将map集合转为json对象时遇到一个问题.map中的value为日期格式如"2019-03-01",在使用JSONObject.toJSON(map).toString( ...
- python 对象存储OSS 阿里云
SDK参考 ->python->上传文件->简单上传 # -*- coding: utf-8 -*- import oss2 auth=oss2.Auth('<yourAcc ...
- 【Alpha】测试报告
测试中发现的Bug 测试伴随着前后端的首次连接之后与开发一起进行,在本阶段,我们遇到了各种各样的bug,有些体现在功能上,有些虽然不会影响到具体的功能实现,但是会影响到用户体验.由于时间问题,我们对其 ...
- spring(spring mvc)整合WebSocket案例(获取请求参数)
开发环境(最低版本):spring 4.0+java7+tomcat7.0.47+sockjs 前端页面要引入: <script src="http://cdn.jsdelivr.ne ...
- OTP&ETS
最近觉得实在是该梳理梳理erlang的框架内容了,所以整理了下. OTP(开放电信平台):并发系统平台, 特点:容错(erlang:get_stacktrace(),try-catch,trap_ex ...