SpringBoot项目属性配置
如果使用IDEA创建Springboot项目,默认会在resource目录下创建application.properties文件,在SpringBoot项目中,也可以使用yml类型的配置文件代替properties文件,下面我们具体介绍:
1.应用配置文件(.properties或.yml):
1.在resource目录下创建application.properties文件,并添加一些配置:
server.port=8081
server.context-path=/girl
2.在resource目录下创建application.yml文件,并添加一些配置:
#注意:在yml文件中添加value值时,value前面需要加一个空格
server:
port: 8081
context-path: /girl #使用localhost:8081/girl/hello
cupSize :B
2.单个的获取配置文件中的内容:
在字段上使用@Value("${配置文件中的key}")的方式获取单个的内容
1.在resource目录下创建application.yml文件,并添加一些配置,在yml文件中,key:后面需要添加一个空格,然后是value值,假设配置如下:
#注意:在yml文件中添加value值时,value前面需要加一个空格
ip: 127.0.0.0
port: 8080
2.创建一个ConfigController类,获取配置文件中的内容并赋值给相应的字段:
@RestController
public class ConfigController {
@Value("${ip}")//获取application.yml文件中名为ip的value值
private String ip;
@Value("${port}")//获取application.yml文件中名为port的value值,并且自动完成数据类型转换
private Integer port;
@RequestMapping("/config")
public String config() {
return "ip:"+ip+",port:"+port;
}
}
3.在浏览器中输入http://localhost:8080/config,可以看到输出了配置文件中配置的内容:
4.当然也可以在配置里面使用当前配置,如下:
ip: 127.0.0.0
port: 8080
content: "ip:${ip},port:${port}"
@Value("${content}")
private String content;
3.使用Bean自动注入获取配置文件中的内容:
假如配置文件中有很多内容,一个一个获取将会很麻烦,那么我们另外一种方式去获取配置文件中的信息
1.在配置文件中添加以下信息(注意格式),此处我们使用了一个名为devconfig的前缀:
devconfig:
ip: 127.0.0.0
port: 8080
2.创建ConfigBean,在类中添加@Componet和@ConfigurationProperties注解,其prefix设置为devconfig,将获取yml中前缀为devconfig下的配置信息:
@Component
@ConfigurationProperties(prefix = "devconfig")//获取前缀为devconfig下的配置信息
public class ConfigBean {
private String ip;//名字与配置文件中一致
private Integer port;
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public Integer getPort() {
return port;
}
public void setPort(Integer port) {
this.port = port;
}
}
3.在ConfigController中使用@Autowrite对bean自动注入,实例化bean:
@RestController
public class ConfigController {
//自动注入,实例化bean
@Autowired
private ConfigBean configBean;
@RequestMapping("/config")
public String config() {
return "另一种方式: ip:"+configBean.getIp()+",port:"+configBean.getPort();
}
}
4.多个配置文件切换的使用:
1.假设开发环境使用ip为:127.0.0.0,使用端口为:8080,生产环境使用ip为:127.0.0.1,使用端口为:8081
下面来修改配置文件,在resource目录下创建application-produce.yml和生产环境配置文件application-dev.yml:
config:
ip: 127.0.0.0
port: 8080
config:
ip: 127.0.0.1
port: 8081
application.yml中配置生效的配置文件,此处设为produce,也就是使用application-produce.yml文件:
spring:
profiles:
active: produce
2.也可通过启动jar包时添加参数来更改生效的配置文件,命令为:java -jar XXX.jar –spring.profiles.active=poduce(这样就可以多环境下同时使用了)
SpringBoot项目属性配置的更多相关文章
- SpringBoot项目属性配置-第二章
SpringBoot入门 1. 相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了 ...
- springboot项目属性配置及注意事项
在idea编辑器建的springboot项目中的resources包下的application.properties这个就是配置文件. 另外配置文件的文件名还可以是application.yml,在r ...
- spring boot学习(2) SpringBoot 项目属性配置
第一节:项目内置属性 application.properties配置整个项目的,相当于以前的web.xml: 注意到上一节的访问HelloWorld时,项目路径也没有加:直接是http://loca ...
- SpringBoot 入门:项目属性配置
开发一个SpringBoot 项目,首当其冲,必然是配置项目 一.项目属性配置 1. SpringBoot自带了Tomcat服务器,通过使用项目配置文件来修改项目的配置,如图配置了部署在80端口,目录 ...
- Spring Boot项目属性配置
接着上面的入门教程,我们来学习下Spring Boot的项目属性配置. 1.配置项目内置属性 属性配置主要是在application.properties文件里配置的(编写时有自动提示)这里我们将se ...
- VS项目属性配置实验过程
(原创,转载注明出处:http://www.cnblogs.com/binxindoudou/p/4017975.html ) 一.实验背景 cocos2d-x已经发展的相对完善了,从项目的创建.编译 ...
- VS IDE 中Visual C++ 中的项目属性配置
VS IDE 中Visual C++ 中的项目属性配置 一. Visual C++ 项目系统基于 MSBuild. 虽然可以直接在命令行上编辑 XML 项目文件和属性表,我们仍建议你使用 VS IDE ...
- Spring-Boot项目中配置redis注解缓存
Spring-Boot项目中配置redis注解缓存 在pom中添加redis缓存支持依赖 <dependency> <groupId>org.springframework.b ...
- [02] SpringBoot的项目属性配置
1.application.properties 简述 配置文件的使用和调整都非常方便,直接在项目默认的classpath下的application.properties文件中做调整即可.例如Spri ...
随机推荐
- int、long、longlong、float、double、long double的范围
- e647. 处理鼠标移动事件
component.addMouseMotionListener(new MyMouseMotionListener()); public class MyMouseMotionListener ex ...
- e556. 在程序中播放音频
try { URL url = new URL("http://hostname/audio.au"); AudioClip ac = Applet.newAudioClip(ur ...
- linux -- Ubuntu 安装搜狗输入法
在Ubuntu Kylin系统中,默认安装搜狗拼音输入法,但是在原生Ubuntu系统中则不是.这可以理解,毕竟搜狗输入法的Linux版有Kylin团队的不小功劳.由于搜狗输入法确实比Linux系统下其 ...
- UI标签库专题十一:JEECG智能开发平台 DictSelect (数据字典下拉选择框)
1. DictSelect (数据字典下拉选择框) 1.1. 參数 属性名 类型 描写叙述 是否必须 默认值 typeGroupCode string 字典分组编码 是 null field s ...
- perl chomp 函数的真正作用
之前一直以为chomp函数只是去掉字符串末尾的\n, 但是今天写程序遇到一个bug,最后的原因就处在chomp上: 读取fasta文件,内容如下: >1 ATGCTAGCTACGTACGTACG ...
- R 中的do.call 函数
do.call 函数是一个高阶函数, 其第一个参数为一个函数名,或者匿名函数,第二个参数是一个list 对象, 其实是参数列表 比如读取文件test.txt, 内容为 read.table(input ...
- sudo 之后 unable to resolve host的问题解决办法
gedit /etc/hosts #127.0.0.1 localhost #127.0.0.1 Masterback或者其他 把后面的Masterback 或者其他改成新的主机名,应该是最近修改过主 ...
- Unity对象查找
1. GameObject.Find 全局摄像机 全局画布 全局灯光 无法查找隐藏对象 ,效率低下,要用完全的路径来提升查找效率 2. transform.Find UI中全部使用此方法 可以查找 ...
- 第四章 Spring.Net 如何管理您的类___统一资源访问接口
在前面章节有童鞋提到过 关于配置文件 Objects.xml 路径的相关问题,这些东西是 IResource 接口的一些内容,接下来就详细介绍一下 IResource 接口. IResource 接口 ...