要将路径值存储在 application.yml 文件中并在 Java 代码中读取,可以使用 @Value 注解来注入这个值。

1. 在 application.yml 中定义变量

首先,在 application.yml 文件中定义你的路径变量,例如:

custom:
  geoPackagePath: static/route_net/marnet_plus_5km.gpkg
  • 1.
  • 2.

2. 使用 @Value 注解读取变量

然后,在 Java 类中使用 @Value 注解来读取这个变量:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;

@Component
public class ShortestRoute {

    @Value("${custom.geoPackagePath}")
    private String geoPackagePath;

    private Graph graph;

    // 初始化方法,读取GeoPackage文件并构建图结构
    @PostConstruct
    public void init() {
        System.out.println("GeoPackage path: " + geoPackagePath);
        // 使用geoPackagePath变量来加载GeoPackage文件
        // 例如:File file = new File(geoPackagePath);
        // 初始化图结构的逻辑...
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

3. 启动应用

启动 Spring Boot 应用,ShortestRoute 类中的 init 方法将会读取 application.yml 中的 geoPackagePath 变量,并使用这个值来加载 GeoPackage 文件。

4. 其它

如果是新建一个文件专门存储变量

Springboot配置文件的变量在代码中读取_Java

那么可以使用import配置导入这个文件变量

Springboot配置文件的变量在代码中读取_spring_02