springboot(若依)多模块获取yml属性

简介: springboot(若依)多模块获取yml属性

使用若依框架时,需要在自己业务模块m2m中配置一些属性,读取时出现一些问题,记录一下,方便下次查找:

  • remote.yml 内容
geoserver:
  file_final_path: /srv/sentinel2/ndvi_final            # 栅格或矢量文件最终的存储位置
  file_path: /srv/sentinel2/ndvi                        # 栅格或矢量文件路径
  out_url: http://102.2.202.196:30510/geoserver         # geoserver的外网访问地址
  pwd: geoserver
  url: http://localhost:7006/geoserver
  user_name: admin

方法一 主模块admin下新建配置文件

  1. 在admin模块下新建application-remote.yml
  2. 在application.yml里引入remote
spring:
  profiles:
    active: dev,remote
  1. 在自己业务模块m2m里正常使用
@Value("${geoserver.user_name}")
public String username;

方法二 在自己业务模块m2m下新建配置文件

  1. 新建remote.yml

直接使用@Value("${geoserver.user_name}") 报错

  1. 需要在类上加入
@ConfigurationProperties(prefix = "geoserver")    // 前缀
@PropertySource(value = {"classpath:remote.yml"})   // 指定配置文件

方法一 不需要加@ConfigurationProperties和@PropertySource

  1. 使用
  • 注解获取
@Value("${user_name}")
public String username;
  • 手动获取

新建获取yaml属性工具类获取属性

public static String username;
static {
    username= xxxUtil.getYml("remote.yml", "geoserver.user_name");
}
/**
 * 获取Yml文件配置属性
 */
public static String getYml(String yml, Object key) {
    Resource resource = new ClassPathResource(yml);
    Properties properties;
    try {
        YamlPropertiesFactoryBean yamlFactory = new YamlPropertiesFactoryBean();
        yamlFactory.setResources(resource);
        properties = yamlFactory.getObject();
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
    return (String) properties.get(key);
}


相关文章
|
4月前
|
Java 测试技术 数据库
Spring Boot中的项目属性配置
本节课主要讲解了 Spring Boot 中如何在业务代码中读取相关配置,包括单一配置和多个配置项,在微服务中,这种情况非常常见,往往会有很多其他微服务需要调用,所以封装一个配置类来接收这些配置是个很好的处理方式。除此之外,例如数据库相关的连接参数等等,也可以放到一个配置类中,其他遇到类似的场景,都可以这么处理。最后介绍了开发环境和生产环境配置的快速切换方式,省去了项目部署时,诸多配置信息的修改。
|
29天前
|
druid Java Maven
|
1月前
|
Java 关系型数据库 数据库连接
SpringBoot项目使用yml文件链接数据库异常
【10月更文挑战第3天】Spring Boot项目中数据库连接问题可能源于配置错误或依赖缺失。YAML配置文件的格式不正确,如缩进错误,会导致解析失败;而数据库驱动不匹配、连接字符串或认证信息错误同样引发连接异常。解决方法包括检查并修正YAML格式,确认配置属性无误,以及添加正确的数据库驱动依赖。利用日志记录和异常信息分析可辅助问题排查。
182 10
|
1月前
|
Java 关系型数据库 MySQL
SpringBoot项目使用yml文件链接数据库异常
【10月更文挑战第4天】本文分析了Spring Boot应用在连接数据库时可能遇到的问题及其解决方案。主要从四个方面探讨:配置文件格式错误、依赖缺失或版本不兼容、数据库服务问题、配置属性未正确注入。针对这些问题,提供了详细的检查方法和调试技巧,如检查YAML格式、验证依赖版本、确认数据库服务状态及用户权限,并通过日志和断点调试定位问题。
|
1月前
|
Java 应用服务中间件 Maven
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
317 0
|
3月前
|
缓存 Java 数据库连接
Spring Boot 资源文件属性配置,紧跟技术热点,为你的应用注入灵动活力!
【8月更文挑战第29天】在Spring Boot开发中,资源文件属性配置至关重要,它让开发者能灵活定制应用行为而不改动代码,极大提升了可维护性和扩展性。Spring Boot支持多种配置文件类型,如`application.properties`和`application.yml`,分别位于项目的resources目录下。`.properties`文件采用键值对形式,而`yml`文件则具有更清晰的层次结构,适合复杂配置。此外,Spring Boot还支持占位符引用和其他外部来源的属性值,便于不同环境下覆盖默认配置。通过合理配置,应用能快速适应各种环境与需求变化。
43 0
|
3月前
|
Java 测试技术 Spring
Java SpringBoot 加载 yml 配置文件中字典项
Java SpringBoot 加载 yml 配置文件中字典项
44 0
|
3月前
|
Java 数据格式
SpringBoot 读取 yml 配置的几种方式
SpringBoot 读取 yml 配置的几种方式
239 0
|
3月前
|
Java
SpringBoot yml 小格子 变 小叶子
SpringBoot yml 小格子 变 小叶子
28 0
|
4月前
|
Java
springBoot如何设置yml文件,设置端口号
springBoot如何设置yml文件,设置端口号