百度地图输入提示接口

  • 地点输入提示
    用户可通过该服务,匹配用户输入关键词的地点推荐列表。
    在应用方面,可将地点推荐列表展示给用户,用户可通过点击等交互方式,结合地点检索服务,检索用户点击的POI信息,实现地点详情检索功能。
http://api.map.baidu.com/place/v2/suggestion?query=天安门&region=北京&city_limit=true&output=json&ak=你的ak //GET请求

API详情参照官网文档

http://lbsyun.baidu.com/index.php?title=webapi/place-suggestion-api

1、根据官方文档创建返回值对象

创建CityAddress.java 实体类,使用idea开发可以直接在类上边添加@Data注解,就可以省去添加get 和set代码了。使用eclipse和myeclipse的记得添加下get、set 方法。

@Data
public class CityAddress {

    private String stauts;
    private String message;
    private List<ResultDetail> result;
    @Data
    public class ResultDetail {
        /*地址名称*/
        private String name;

        private Location location;

        @Data
        public class Location{
            private String lat;
            private String lng;
        }

        /*uid*/
        private String uid;

        /*所属省*/
        private String province;

        /*所属省市*/
        private String city;

        /*所属省市区*/
        private String district;

        /*商业*/
        private String business;

        /*城市code*/
        private String cityid;
    }

2、编写百度输入提示API接口调用方法

public static List<CityAddress.ResultDetail>cityLimit(String region, String query){
        if(StringUtils.isEmpty(query))return null;
        String ak = "你的ak";
        // query:输入的地址
        // region: 需要限制的城市,例如:region = '北京',输入火车站的时候提示的是北京市的火车站信息
        String resultJson = HttpClientUtil
                .doGet("http://api.map.baidu.com/place/v2/suggestion?query="+query+"&region="+region+"&city_limit=true&output=json&ak="+ak);
        System.out.println(resultJson);
        //GSON直接解析成对象
        CityAddress resultBean = new Gson().fromJson(resultJson,CityAddress.class);
        //对象中拿到集合
        List<CityAddress.ResultDetail> BeanList = resultBean.getResult();
        //将拿到的集合进行处理,获取省市区和具体地理信息
        for(CityAddress.ResultDetail detail : BeanList){
            detail.setName(detail.getProvince()+detail.getCity()+detail.getDistrict()+detail.getName());
        }
        return BeanList;
    }

3、测试

在这里插入图片描述
在这里插入图片描述
成功!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值