spring boot 项目属性配置
一、系统配置文件
1.application.properties是新建springboot项目后默认得配置文件
配置的示例如下
server.port=
server.context-path=/girl
2.推荐使用application.yml的方式
配置的示例如下
server:
port:
context-path: /girl
二、YAML
三、实际应用
1.@value 的用法
application.yml
server:
port: 8082
cupSize: B
age: 18
content: "cupSize: ${cupSize}, age: ${age}"
HelloController中对应的注入方式
@RestController
public class HelloController { @Value("${cupSize}")
private String cupSize; @Value("${age}")
private String age; @Value("${content}")
private String content; @RequestMapping(value = "/hello", method = RequestMethod.GET)
public String say (){
return cupSize+","+age+";"+content;
}
}
浏览器输出为B,18;cupSize: B, age: 18
2.@component 和@ConfigurationProperties
创建实体GirlProperties,其中(prefix="girl")代表适配 配置文件中所有girl开头的配置
package com.dechy.girl.girl; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component; @Component
@ConfigurationProperties(prefix="girl")
public class GirlProperties {
private String cupSize;
private Integer age; public String getCupSize (){
return cupSize;
} public void setCupSize (String cupSize){
this.cupSize = cupSize;
} public Integer getAge (){
return age;
} public void setAge (Integer age){
this.age = age;
}
}
对应的controller代码为
package com.dechy.girl.girl; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; @RestController
public class HelloController { @Autowired
private GirlProperties girlProperties; @RequestMapping(value = "/hello", method = RequestMethod.GET)
public String say (){
return girlProperties.getCupSize();
}
}
配置为
server:
port:
girl:
cupSize: B
age:
3.多环境使用不同的配置文件
将resources下的application.yml复制为application-dev.yml和application-prod.yml
内容分别如下
server:
port:
girl:
cupSize: B
age:
server:
port:
girl:
cupSize: F
age:
将application.yml修改为,代表我们使用dev这个配置
spring:
profiles:
active: dev
但是这样改使用仍然很麻烦,解决方法如下
使用如下方式启动
java -jar target/girl-0.0.1-SNAPSHOT.jar --spring.profile.active=dev
spring boot 项目属性配置的更多相关文章
- Spring Boot项目属性配置
接着上面的入门教程,我们来学习下Spring Boot的项目属性配置. 1.配置项目内置属性 属性配置主要是在application.properties文件里配置的(编写时有自动提示)这里我们将se ...
- 寻找写代码感觉(二)之 Spring Boot 项目属性配置
一.前言 写代码就和恋爱一样,有反馈就要趁热打铁,搞完了项目搭建,接下来就来搞搞项目配置. 二.IDEA设置 1.编码配置 这里所说的就是代码的编码格式,你可以不设置,但是可能要面临的是,很多未知的麻 ...
- Spring Boot 项目 Maven 配置
在配置基于Maven的Spring Boot项目的过程中,打包运行出现了一系列错误. 比如: mvn 中没有主清单属性.java.lang.NoClassDefFoundError: org/spri ...
- idea下新建Spring Boot项目并配置启动
一.操作步骤 ①使用idea新建一个Spring Boot项目 ②修改pom.xml ③修改application.properties ④修改编写一个Hello Spring Boot的Contro ...
- spring boot项目mybatis配置注解+配置文件
maven依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-ja ...
- IDEA新建一个Spring Boot项目
Maven构建项目模板 maven构建的是maven风格的纯净模板,要转变成spring boot项目需要自己添加依赖等配置. mvn archetype:generate: Maven插件原型是一个 ...
- spring boot项目遇到 'lower_case_table_names' 的解决办法
今天自己搭建了spring boot项目,配置的是mysql数据库,启动时报如下错误 Mon Jan 22 23:31:40 CST 2018 WARN: Establishing SSL conne ...
- Spring boot项目maven的profile多环境配置不自动替换变量的问题解决
Spring boot项目maven的profile多环境配置不自动替换变量的问题解决 在网上找了好久,配置都很简单,可是我的程序就是不能自动替换变量,最终单独测试,发现原来是引用spring b ...
- 让Spring Boot项目启动时可以根据自定义配置决定初始化哪些Bean
让Spring Boot项目启动时可以根据自定义配置决定初始化哪些Bean 问题描述 实现思路 思路一 [不符合要求] 思路二[满足要求] 思路三[未试验] 问题描述 目前我工作环境下,后端主要的框架 ...
随机推荐
- VPS 相关
1.一键测试 wget http://soft.laozuo.org/tools/cpu-io.shsh cpu-io.sh 2.锐速破解 wget -N --no-check-certificate ...
- getElementsByTagName
1.getElementsByTagName * document.getelementByID(id名称)* 通过id名称获取元素,它只有一个主语,docment(整个文档)** getElemne ...
- python第三步骤(pygame)
1:先安装homebrew(类似于yum /apt-get为什么需要它呢,因为pip安装的时候需要很多的包的依赖,sdl什么的), 2:pip 安装pygame 我讨厌的环境变量问题 然后 通过的是 ...
- 我理解的BFC(块级格式化上下文)
BFC(Block formatting context) 直译为"块级格式化上下文". BFC它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Bl ...
- MVC模式浅谈
MVC模式浅谈 一.MVC模式概述 模型-视图-控制器(MVC模式)是一种非常经典的软件架构模式,在UI框架和UI设计思路中扮演着非常重要的角色.从设计模式的角度来看,MVC模式是 一种复合模式,它将 ...
- spring boot 中使用servlet
- 解决:python 连接Oracle 11g 报错:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
其次,将查询到的service_name替换sid即可:conn=cx_Oracle.connect('hr/admin@localhost:1521/EE.oracle.docker')
- Docker 指定容量
vim /etc/sysconfig/docker-storage加入以下命令 DOCKER_STORAGE_OPTIONS="--storage-driver devicemapper - ...
- 静态html返回
在这篇文章中我们介绍后台路由的概念,后台的路由根据路径返回相应的内容, 首先我们建立一个服务器 let port = 3000 //监听端口let fs = require ('fs')//用来生成可 ...
- keras初探
1.对网络的理解: 2.怎样训练,输入已经数据,经过训练,输入测试数据,得到相似数据 3.RNNs 循环神经网络