当前位置: 首页 > news >正文

独立网站如何做seo搜索价格

独立网站如何做,seo搜索价格,网站栏目模块,陕西网站建设多少钱文章目录 1. Value 注解读取单个属性2. 使用 ConfigurationProperties 注解3. 通过 Environment 对象读取属性4. 使用 PropertySource 注解加载额外的配置文件 在 Spring Boot 中,application.yml 文件用于配置应用程序的属性,Spring Boot 默认会从 src/…

文章目录

  • 1. @Value 注解读取单个属性
  • 2. 使用 @ConfigurationProperties 注解
  • 3. 通过 Environment 对象读取属性
  • 4. 使用 @PropertySource 注解加载额外的配置文件

在 Spring Boot 中,application.yml 文件用于配置应用程序的属性,Spring Boot 默认会从 src/main/resources 目录下的 application.propertiesapplication.yml 文件中读取配置。读取 application.yml 文件中的配置可以通过以下几种常用的方法进行:

  1. @Value: 适合读取简单的单一属性。
  2. @ConfigurationProperties: 适合读取复杂的配置集。
  3. Environment: 适合在运行时动态访问配置。
  4. @PropertySource: 加载 .properties 文件。

1. @Value 注解读取单个属性

@Value 注解用于读取单一简单的配置属性,该注解可以直接应用于字段、构造函数或方法参数上,不要求提供 Setter 方法。

  1. application.yml 配置文件中添加如下配置:

    app:name: MyAppkeys:- key1- key2
    
  2. 使用 @Value 注解从配置文件中读取单个属性值:

    1. 字段注入:将 @Value 注解应用于字段,Spring 将直接将配置值注入到字段中。

      @Component
      public class MyComponent {@Value("${app.name}")private String name;}
      
    2. 构造函数注入@Value 也可以用于构造函数参数。

      @Component
      public class MyComponent {private final String name;public MyComponent(@Value("${app.name}") String name) {this.name = name;}}
      
    3. 方法参数注入@Value 注解用于方法参数。

      @Component
      public class MyComponent {private String name;@Value("${app.name}")public void setKeys(String name) {this.name = name;}}
      

注意:@Value 注解无法处理复杂的配置,如集合,如下处理会在应用启动时抛出 IllegalArgumentException 异常:Could not resolve placeholder 'app.keys' in value "${app.keys}"

@Value("${app.keys}")
private List<String> keys;

2. 使用 @ConfigurationProperties 注解

@ConfigurationProperties 用于将配置文件中的属性绑定到 Java 对象中。适合处理结构化的配置,比如嵌套的属性或复杂的属性集合。

  1. application.yml 配置文件中添加如下配置:

    app:name: MyAppkeys:- key1- key2
    
  2. 在类上使用 @ConfigurationProperties 注解,并指定前缀,该类会直接映射配置文件中的属性名一致属性:

    @Component
    @ConfigurationProperties(prefix = "app")
    public class AppProperties {private List<String> keys;}
    

注意:@ConfigurationProperties 读取配置时需要确保配置文件中的属性名与 Java 类中的属性名匹配。

3. 通过 Environment 对象读取属性

Environment 是 Spring 中用于管理和访问配置属性、配置文件和环境变量的一个抽象接口,该对象提供了一种管理和访问配置属性、激活的配置文件和环境变量的统一方式。我们可以在任何 Spring 管理的 bean 中通过注入 Environment 对象来获取配置属性。

  1. application.yml 配置文件中添加如下配置:

    app:name: MyAppkeys:- key1- key2
    
  2. 在类中注入 Environment 对象,使用env.getProperty(String key)来检索属性的值。

    @Component
    public class MyComponent {@Autowiredprivate Environment env;public void printConfig() {String port = env.getProperty("server.port");System.out.println("Server Port: " + port);}
    }
    

注意:Environment 在加载 YML 配置文件时,会将每个元素视为单独的键。

application.yml 文件中的配置:

yamlCopy Codeapp:keys:- key1- key2- key3

Environment 中,将被处理为:

  • app.keys[0] 对应 key1
  • app.keys[1] 对应 key2
  • app.keys[2] 对应 key3

因此对于复杂配置需要特殊处理,例如获取集合元素需要使用类似数组索引的语法来访问 YAML 文件中的列表元素。

4. 使用 @PropertySource 注解加载额外的配置文件

@PropertySource 注解是 Spring Framework 提供的一个注解,用于加载额外 .properties 配置文件或其他资源文件中的属性到 Spring 的 Environment 中。

  1. src/main/resources 目录下创建 config.properties 的属性文件:

    app.name=MyApp
    app.version=1.0.0
    
  2. 在配置类上使用 @PropertySource 注解来加载配置文件:

    @Configuration
    @PropertySource("classpath:config.properties")
    //@PropertySource({"classpath:config.properties", "classpath:another-config.properties"})
    public class AppConfig {}
    
  3. 使用 @Value 注解或 Environment 对象获取属性:

    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Component;@Component
    public class MyComponent {@Value("${app.name}")private String appName;@Autowiredprivate Environment env;public void printAppInfo() {System.out.println("App Name: " + appName);String appVersion = env.getProperty("app.version");System.out.println("App Version: " + appVersion);}
    }
    

注意: 如果需要加载多个属性文件,可以在 @PropertySource 注解中使用 value 属性指定多个文件路径:

@PropertySource({"classpath:config.properties", "classpath:another-config.properties"})
  1. 路径classpath: 前缀表示文件在类路径中。如果文件位于文件系统的其他位置,你可以使用文件系统路径,例如 file:/path/to/config.properties
  2. 覆盖@PropertySource 加载的属性文件中的属性会覆盖同名的系统属性,但不会覆盖由 Spring Boot 的 application.propertiesapplication.yml 文件中定义的属性。
  3. 顺序:如果多个属性文件定义了同一个属性,后加载的文件中的属性值会覆盖先加载的文件中的值。
http://www.hkea.cn/news/231751/

相关文章:

  • 北京网站设计多少钱微信引流推广
  • 网站建设实施背景分析百度指数里的资讯指数是什么
  • 小程序定制开发深圳公司网站的优化seo
  • 构建一个网站域名查询平台
  • 蚌埠网站关键词优化推广下载
  • 看房地产的app在哪看aso安卓优化
  • 网站与域名的区别扬州整站seo
  • 哪些网站可以进行域名注册公司关键词seo
  • 如何申请一个网站 做视频百度小说搜索热度排行榜
  • 天津做网站选择津坤科技b重庆seo教程搜索引擎优化
  • 什么网站做热能表好百度一下电脑版首页网址
  • 点击图片直接进入网站怎么做如何使用免费b站推广网站
  • 手机网站建设软件怎么在百度上做广告推广
  • 南京做网站团队手机app免费制作平台
  • 17173游戏网搜索优化指的是什么
  • 公司做网站需要给百度交钱吗百度竞价推广方案
  • 网站建设的关键seo推广小分享
  • 写小说的小网站百度关键词排名优化
  • 制作网站的成本规划公司如何建立网站
  • html语言做网站石嘴山网站seo
  • 做最好的言情网站官网seo优化
  • 云南建设监理协会网站营销失败案例分析
  • 怎么样做淘宝优惠券网站搜索引擎营销的优缺点
  • wordpress动态订单seo社区
  • 网站域没到期不能续费吗google谷歌搜索
  • 厦门好的做网站公司网络营销推广方式都有哪些
  • 重庆市建设工程信息官网站自己做网站的流程
  • 网站建设公司怎么做网络营销网站推广
  • 360应用商店seo服务套餐
  • 废橡胶网站建设个人博客网页设计