首页 > 其他分享 >地铁查询

地铁查询

时间:2024-04-17 23:01:21浏览次数:30  
标签:站点 String 地铁 List 查询 allSubwayStations station new

public List<List<String>> getAllSubwayStations() {
// 创建一个用于存储站点的 Map
Map<Integer, List<String>> subwayStationsMap = new HashMap<>();

// 查询数据库中所有的站点,并按照站点 ID 从小到大排序
List<Station> allStations = stationService.list();
Collections.sort(allStations, Comparator.comparing(Station::getStationID));

// 遍历所有的站点,按照地铁线路号将站点添加到相应的列表中
for (Station station : allStations) {
Integer lineNumber = station.getLineNumber();
String stationName = station.getStationName();

List<String> stationList = subwayStationsMap.getOrDefault(lineNumber, new ArrayList<>());
stationList.add(stationName);
subwayStationsMap.put(lineNumber, stationList);
}

// 将所有线路的站点列表放入一个 List<List<String>> 中,并按照地铁线路号进行排序
List<List<String>> allSubwayStations = new ArrayList<>();
for (Map.Entry<Integer, List<String>> entry : subwayStationsMap.entrySet()) {
allSubwayStations.add(entry.getValue());
}
return allSubwayStations;
}

@PostMapping("getstation")
public Result getStation(@RequestBody QueryParam query){
HashMap param = query.getParam();
String startStation = (String) param.get("startStation");
String endStation = (String) param.get("endStation");
System.out.println(startStation);
System.out.println(endStation);
List<List<String>> allSubwayStations = getAllSubwayStations();
Subway subway = new Subway();
List<String> stationsBetween = subway.getStationsBetween(startStation,endStation, allSubwayStations);
List<Station> stations = new ArrayList<>();
for(String s : stationsBetween){
LambdaQueryWrapper<Station> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(Station::getStationName,s);
List<Station> station = stationService.list(lambdaQueryWrapper);
stations.add(station.get(0));
}

System.out.println("Stations between A and G: " + stationsBetween);
return Result.suc(stations);
}

标签:站点,String,地铁,List,查询,allSubwayStations,station,new
From: https://www.cnblogs.com/hbro/p/18142013

相关文章

  • ETL工具-nifi干货系列 第十四讲 nifi处理器QueryDatabaseTableRecord查询表数据实战教
    1、处理器QueryDatabaseTableRecord和处理器QueryDatabaseTable比较相似,该组件生成一个SQL查询,或者使用用户提供的语句,并执行它以获取所有在指定的最大值列中值大于先前所见最大值的行。QueryDatabaseTable的查询结果将被转换为Avro,而QueryDatabaseTableRecord的查询结果则被......
  • Java API之查询文档
    1、查询指定id文档importorg.elasticsearch.action.get.GetRequest;importorg.elasticsearch.action.get.GetResponse;importorg.elasticsearch.client.RequestOptions;importorg.util.ConnectElasticsearch;publicclassGetDoc{publicstaticvoidmain(Strin......
  • 解决C# 连接MYSQL数据库查询数据时 Unable to convert MySQL date/time value to Syst
    C#读取MySql时,如果存在字段类型为date/datetime时的可能会出现以下问题“UnabletoconvertMySQLdate/timevaluetoSystem.DateTime”原因:可能是该字段(date/datetime)的值默认缺省值为:0000-00-00/0000-00-0000:00:00,这样的数据读出来转换成System.DateTime时就会有问题;解......
  • mysql锁表查询
    一、查询所有进程showfullprocesslist;字段说明id列,用户登录mysql时,系统分配的"connection_id",可以使用函数connection_id()查看user列,显示当前用户。如果不是root,这个命令就只显示用户权限范围的sql语句host列,显示这个语句是从哪个ip的哪个端口上发的,可以用来跟踪出现......
  • mysql如何批量kill慢查询
    原文链接:https://blog.csdn.net/lanyang123456/article/details/122277340Slowquery慢查询是指执行很慢的SQL语句。一般会设置一个阈值,例如,100ms,执行时间超过100ms的都会判定为慢查询。慢查询是一种危险的信号,MySQL服务可能很快不可用。当大量出现的时候,应该立即kill。......
  • 车辆信息查询 - 高效快捷地获取车辆相关信息的利器
     随着汽车的普及,车辆信息查询变得越来越重要。无论是买车、卖车还是维修保养,了解车辆的详细信息是必不可少的。而如何高效快捷地查询车辆信息成为了很多车主的需求。幸运的是,我们有一个非常实用的接口可以满足这个需求,而这就是挖数据平台提供的车辆信息查询接口。这个接口的主......
  • ETL工具-nifi干货系列 第十三讲 nifi处理器QueryDatabaseTable查询表数据实战教程
    1、处理器QueryDatabaseTable,该组件生成一个SQL查询,或者使用用户提供的语句,并执行它以获取所有在指定的最大值列中值大于先前所见最大值的行。查询结果将被转换为Avro格式,如下图所示: 本示例通过QueryDatabaseTable处理器连接数据库查询表数据,然后连接到LogMessage打印日志......
  • vbs查询局域网内电脑的软件和硬件列表清单
    <p>下面的代码在windows下容易报毒大家可以放心使用</p>'==========================================================================''Date:2009/3/19'Name:查询软件和硬件列表清单'Author:Smileruner'www.overmcse.com......
  • 查询同时附带查主表的第二列
    --declare@tablenvarchar(50)='子表';--declare@sizeint=10;--declare@indexint=3;--declare@ordernvarchar(50)='Id';ifnot@size>0beginset@size=11;endifnot@index>0beginset@index=1;enddecl......
  • MySQL千万数据,怎么快速查询?
    前言面试官:来说说,一千万的数据,你是怎么查询的?me:直接分页查询,使用limit分页。面试官:有实操过吗?me:肯定有呀此刻献上一首《凉凉》也许有些人没遇过上千万数据量的表,也不清楚查询上千万数据量的时候会发生什么。今天就来带大家实操一下,这次是基于MySQL5.7.26做测试准备数据......