数据库查询省市区数据,后台如何封装数据?

时间:2022-05-06 11:35:57
最近在做的项目中需要从数据库中查询出省市区数据,然后后台服务器对数据进行封装,以json数据的数据格式发送给APP端
我们本地数据库中省市区数据在一张表格中,内容如图:
数据库查询省市区数据,后台如何封装数据?
我是用Java ssm框架做的后台服务器,
我现在的做法一次性查出来,然后在服务器这边封装数据,代码为:
List<Region> region = this.regionService.selectAll(); 
List<Object> pcd = new ArrayList<Object>();

for(Region province :region){
if(province.getParent_code() == 100000){
for(Region city :region){
if(city.getParent_code() == province.getCode()){
for(Region district : region){
if(district.getParent_code() == city.getCode()){
List<Object> d = new ArrayList<Object>();
List<Object> c = new ArrayList<Object>();
List<Object> p = new ArrayList<Object>();
d.add(district.getFull_name());
c.add(city.getFull_name());
c.add(d);
p.add(province.getFull_name());
p.add(c);
pcd.add(p);
}
}
}
}
}
}

requestDate.put("error", "0");
requestDate.put("msg", "获取成功");
requestDate.put("region", pcd);
app接受的数据是: 数据库查询省市区数据,后台如何封装数据?
这样是一个一个给传过去,APP接受的数据过大
我想问问大神是不是我代码有问题,或者哪位大神有其他的解决办法?菜鸟小白一个  求帮忙

7 个解决方案

#1


这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

#2


引用 1 楼 sinat_28984567 的回复:
这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

#3


引用 2 楼 qq_36795097 的回复:
Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

#4


引用 2 楼 qq_36795097 的回复:
Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

什么数据库MySQL吗,5.7 支持JASON的格式

#5


引用 3 楼 sinat_28984567 的回复:
Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

我希望在程序里面处理,但是没想到怎么处理,大神有好的demo可以借阅一下吗?

#6


引用 5 楼 qq_36795097 的回复:
Quote: 引用 3 楼 sinat_28984567 的回复:

Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

我希望在程序里面处理,但是没想到怎么处理,大神有好的demo可以借阅一下吗?


这个框架不熟悉……要是mssql还可以写写,但是楼主这套东西,可能就无能为力了,楼主可以到java版问问,那里应该会

#7


引用 4 楼 z10843087 的回复:
Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

什么数据库MySQL吗,5.7 支持JASON的格式

数据库是mysql5.5的  如果我查询数据库的时候结果直接返回直接对应好的省市区数据,这个sql语句该怎么写

#1


这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

#2


引用 1 楼 sinat_28984567 的回复:
这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

#3


引用 2 楼 qq_36795097 的回复:
Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

#4


引用 2 楼 qq_36795097 的回复:
Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

什么数据库MySQL吗,5.7 支持JASON的格式

#5


引用 3 楼 sinat_28984567 的回复:
Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

我希望在程序里面处理,但是没想到怎么处理,大神有好的demo可以借阅一下吗?

#6


引用 5 楼 qq_36795097 的回复:
Quote: 引用 3 楼 sinat_28984567 的回复:

Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句


这个东西是希望在数据库中处理还是程序里边处理,那个框架不太了解……

我希望在程序里面处理,但是没想到怎么处理,大神有好的demo可以借阅一下吗?


这个框架不熟悉……要是mssql还可以写写,但是楼主这套东西,可能就无能为力了,楼主可以到java版问问,那里应该会

#7


引用 4 楼 z10843087 的回复:
Quote: 引用 2 楼 qq_36795097 的回复:

Quote: 引用 1 楼 sinat_28984567 的回复:

这个得看客户端的数据需求,需要什么数据传输什么数据,如果所有市区数据都要,那就只能都传过去。代码实现了就可以。接受的数据过大和代码没关系吧,还是和传输的数据有关系。

客户端那边是希望获取类似:
数据库查询省市区数据,后台如何封装数据?
这样类型的数据,而不是像我现在一个一个的
同事说可以在成从数据库中查询的时候查询出类似的样子,可是我新手,在mybatis中都不知道怎么写这个查询语句

什么数据库MySQL吗,5.7 支持JASON的格式

数据库是mysql5.5的  如果我查询数据库的时候结果直接返回直接对应好的省市区数据,这个sql语句该怎么写