在公司做项目时,遇到了这么一个需求:需要省市区街道地址下拉,所以研究了一下

1.首先,实体类设计

省表

市表

区表

街道表

2.service层

    /*** 获取省的数据* @return*/public List<Province> queryProvince(RestRequest request) {return  areaMapper.selectProvince();}
    /*** 获取市的数据* @return*/public List<City> getCity(String provinceCode ) {return  areaMapper.selectCityByProvinceId(provinceCode);}
   /*** 获取区的数据* @return*/public List<Area> queryArea(String cityCode) {return areaMapper.selectAreaByCityId(cityCode);}
    /*** 获取街道的数据* @return*/@Overridepublic List<Street> getStreet(String areaCode) {return  areaMapper.selectStreetByAreaId(areaCode);}

获取级联地址的方法

 public List<Province> queryArea(RestRequest request){//获取省的数据List<Province> provinces = getProvince();List<Province> provinceList = new ArrayList<>();for (Province province : provinces) {Province province1 = new Province();province1.setProvinceId(province.getProvinceId());province1.setAddress(province.getAddress());province1.setProvinceCode(province.getProvinceCode());//获取市的数据List<City> cities = getCity(province.getProvinceCode());List<City> cityList = new ArrayList<>();for (City city : cities) {City city1 = new City();city1.setCityId(city.getCityId());city1.setAddress(city.getAddress());city1.setProvinceCode(city.getProvinceCode());city1.setCityCode(city.getCityCode());//获取区的数据List<Area> areas = getArea(city.getCityCode());List<Area> areaList = new ArrayList<>();for (Area area:areas){Area area1 = new Area();area1.setAreaCode(area.getAreaCode());area1.setAreaId(area.getAreaId());area1.setAddress(area.getAddress());area1.setCityCode(area.getCityCode());//获取街道的数据List<Street> streets =getStreet(area.getAreaCode());area1.setChildren(streets);areaList.add(area1);}city1.setChildren(areaList);cityList.add(city1);}province1.setChildren(cityList);provinceList.add(province1);}String jsonString = JSON.toJSONString(provinceList);return provinceList;}

3.结果返回

全国地址省市区街道,4级联动查询相关推荐

  1. uniapp省市区街道四级级联动选择器

    省市区街道四级级联动选择器 效果 说明 代码 更多代码在这 效果 说明 需要先在高德地图申请key,快速通道 [IndexedList 索引列表]这是下载的插件 快速通道 [自动化索引列表]文章 快速 ...

  2. 世界级/全国/省份/城市/县区4级联动

    世界级/全国/省份/城市/县区4级联动 Js为腾讯qq的LocList.xml 需要转为json格式的js文件 (在QQ安装目录可以找到loclist.xml文件 C:\ProgramFiles\Te ...

  3. 2021年省市区街道居委五级联动

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.逐级拉取 二.调用数据同步接口 1.直接调用循环调取 2.对应表结构 总结 代码地址 前言 提示:这里可以添加本文 ...

  4. 全国省市区街道最新数据获取

    一.效果 二.相关代码 1.引入包 pom: <?xml version="1.0" encoding="UTF-8"?><project x ...

  5. 2020最新全国省市区街道居委会五级地址

    (1)2020最新全国省市区街道居委五级区划代码数据库(来自国家统计局2020年6月20日爬取数据)绝对真实完整 (2)2020-9-19日青风百草修定版 (3)如果您发现了地址库存在的问题,也请加以 ...

  6. 选择收货地址,省市区街道联动

    使用情景是填写快递邮寄到的地址信息,介绍实现此功能的方法之一,实现之后效果如图所示: 选择省市区,逐个选择逐个出现,如果选择的是北京.天津等直辖市,就不是四级联动是三级联动. 选择镇或街道. 实现步骤 ...

  7. vue利用级联选择器实现全国省市区乡村五级菜单联动

    " 大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂. " 现在是:2022年2月13日20:09:27 今天分享一个五级级联地址的组件的使用吧. 前言 接到这样的一个需求:需要 ...

  8. 省市区三级联动查询(含地区表sql)

    地区sql文件在我上传的资源中sys_region.sql,直接导入数据库即可,大家放心不需要积分的哟! 地区资源下载地址,冲! Controller /*** <p>* 省市区三级联动* ...

  9. html中免费的四级联动,利用JS实现省市区街道四级联动插件

    特效描述:利用JS实现 省市区街道 四级联动插件.利用JS实现省市区街道四级联动插件 代码结构 1. 引入CSS 2. 引入JS 3. HTML代码 所在地区 所在地区 请选择 请选择 请选择 请选择 ...

最新文章

  1. 如何解决VHDL中参数化赋值:赋全0、全1、全z
  2. 下载python会对电脑有什么影响-用户在对Python下载的时候,这些注意事项不能忽视...
  3. excel取整函数_数据分析小白学习之路(三)——Excel多练熟能生巧
  4. MySQL对一行多列求和
  5. java byte[] 文件流 转换成string是乱码_Java学习--IO(二)、多线程
  6. 使用免费ip代理进行投票
  7. python中文显示不出来_彻底解决Python里matplotlib不显示中文的问题
  8. 【poj1995】快速幂
  9. 带ant 的收发器_ANT无线收发器nRF24AP1及其应用
  10. 吉大计算机学院田地,吉林大学研究生专业介绍:地质工程
  11. php微信摇一摇开发文档,摇一摇事件通知
  12. SAP OData 开发教程 - 从入门到提高(包含 SEGW, RAP 和 CDP)
  13. react 逆地理 高德地图_react中使用高德地图的原生API
  14. JQuery实现图片自动轮播左右切换鼠标移入
  15. 【完整的WebGIS教程】7.1 ArcGIS API for JS行政区划导航(上)
  16. java8 access_Java语言8 连接Access数据库UCanAccess的操作介绍
  17. 实习随笔3( 辗转,终到,这一天)
  18. 欧盟剔除英国、瑞士和以色列开展量子计算遭声讨,科学无国界成伪命题
  19. 数据库百科---实现多标签筛选
  20. 大数据之Linux(一):常用命令之cat和head,tail命令结合

热门文章

  1. 今天发现百度地图街景拼接的一处BUG
  2. 波峰焊 php,选择性波峰焊焊与普通波峰焊的区别
  3. iOS开发公开课总结
  4. 计算机主要键符的功能怎么读,计算机键盘中的全部按键基本功能.doc
  5. Flink中的时间属性总结
  6. 憋瞎说,大数据不是你想的那样!
  7. dns服务器未响应 没网,dns服务器未响应解决方法
  8. 分布式系统灰度发布实践
  9. Cadence Allegro(15):设置全局铜皮参数
  10. 跟随鼠标移动的星星✩代码解释✩✩✩