Spring Boot 核心-外部配置
2017-04-25 15:33
477 查看
Spring Boot可以使用properties文件、yaml文件或者命令行参数作为外部配置。
Spring Boot可以基于jar包运行,打成jar包可以通过下面命令运行:
可以通过下面命令修改tomcate端口:
常规Spring环境下,注入properties文件里的值的方式:
通过@PropertySource指明文件位置。
通过@Value注入值。
在Spring Boot环境下:
在application.properties中定义属性。
通过@Value注入值。
使用@Value这个注入属性在实际开发中有点麻烦,如果多个地方用到这个属性就需要注入多次。
Spring Boot提供了基于类型安全的配置方式,通过@ConfigurationProperties将properties属性和一个Bean及其属性关联起来。
新建Spring Boot项目
在pom中添加
在application.properties中添加配置
类型安全的Bean
校验代码
参考
1 命令行参数配置
Spring Boot可以基于jar包运行,打成jar包可以通过下面命令运行:java -jar xxx.jar
可以通过下面命令修改tomcate端口:
java -jar xx.jar --server.port=9090
2 常规属性配置
常规Spring环境下,注入properties文件里的值的方式:通过@PropertySource指明文件位置。
通过@Value注入值。
在Spring Boot环境下:
在application.properties中定义属性。
通过@Value注入值。
3 类型安全的配置(基于properties)
使用@Value这个注入属性在实际开发中有点麻烦,如果多个地方用到这个属性就需要注入多次。Spring Boot提供了基于类型安全的配置方式,通过@ConfigurationProperties将properties属性和一个Bean及其属性关联起来。
实战
新建Spring Boot项目在pom中添加
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>
在application.properties中添加配置
author.name=wyh author.age=30
类型安全的Bean
package com.chenfeng.xiaolyuh.properties; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "author")// prefix指定properties的前缀, public class AuthorSettings { private String name; private long age; public String getName() { return name; } public void setName(String name) { this.name = name; } public long getAge() { return age; } public void setAge(long age) { this.age = age; } }
校验代码
package com.chenfeng.xiaolyuh; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.chenfeng.xiaolyuh.properties.AuthorSettings; @SpringBootApplication // 这个是Spring Boot项目的核心注解,主要是开启自动配置。 @RestController public class SpringBootStudentApplication { @Autowired // 通过注解直接注入配置类 private AuthorSettings authorSettings; @RequestMapping("/") public String index() { return "Hello World! " + authorSettings.getName() + "::" + authorSettings.getAge(); } // 标准的JAVA应用main方法,主要作用作为项目启动的入口 public static void main(String[] args) { SpringApplication.run(SpringBootStudentApplication.class, args); } }
参考
相关文章推荐
- 【SpringBoot】SpringBoot核心-外部配置
- SpringBoot14-springboot核心-外部配置,日志配置,Profile配置
- Spring Boot核心-基本配置
- Spring Boot核心原理-自动配置
- 21-SpringBoot——核心-Web配置
- Spring Boot配置文件放在jar外部
- Springboot引用外部配置文件
- Spring boot使用application.properties进行外部配置
- SpringBoot13-springboot核心-基本配置
- Spring Boot教程(三) --- 外部化的配置
- Spring-boot中利用外部配置文件生成数据源
- Spring Boot 支持多种外部配置方式1
- Springboot引用外部配置文件
- spring boot 使用application.properties 进行外部配置
- springboot干货——(八)springboot引入外部xml配置文件
- Spring Boot核心配置
- Spring Boot 项目在外部容器中运行的配置
- Spring Boot 支持多种外部配置方式
- 【SpringBoot】核心依赖和自动配置
- 知识点①:springboot使用外部 tomcat 运行配置