amapKey需要自己申请,具体怎么申请网上有很多教程。

 

java经纬度弧度转角度 经纬度转地址java_json

/**
     * 经纬度转化为具体地点
     * 参数格式:120.307499,31.576411 (经度,纬度)
     *           120.307499,31.576411|117.320003,40.99195|107.320003,40.99195
     * 正式环境替换掉{@link #amapKey}
     */
    @ApiOperation(value = "经纬度转化为具体地点", notes = "经纬度转化为具体地点")
    @ApiImplicitParam(paramType = "query", name = "points", value = "经纬度坐标 最多支持20个坐标点 多个点之间用\"|\"分割", required = true, dataType = "String")
    @GetMapping("/pointsToLocations")
    public ResultBean pointsToLocationsAll(@RequestParam String points) throws UnsupportedEncodingException {
        logger.info("------ 经纬度转化为具体地点  pointsToLocations:{} start", points);
        //将GPS坐标转化为高德地图坐标的URL后再去请求位置信息
        String convertUrl = "https://restapi.amap.com/v3/assistant/coordinate/convert?locations="+ URLEncoder.encode(points,"UTF-8")+"&coordsys=gps&key="+amapKey;
        JSONObject jsonObject = JSONObject.fromObject(HttpClientUtil.doGet(convertUrl));
        String amapPoints = (String) jsonObject.get("locations");
        String formattedAmapPoints = URLEncoder.encode(amapPoints.replaceAll(";", "|"), "UTF-8");
        String locationUrl = "https://restapi.amap.com/v3/geocode/regeo?output=json&location="+formattedAmapPoints+"&key="+amapKey+"&radius=1000&batch=true";
        JSONObject result = JSONObject.fromObject(HttpClientUtil.doGet(locationUrl));
        logger.info("------ 经纬度转化为具体地点  pointsToLocations: end");
        return ResultBean.ok().putDataValue(result);
    }