3 springboot配置文件
springboot 是习惯优于配置,抛弃SSM中繁琐的配置内容,大量的基础配置由框架的完成。所以我们现在没有用任何的配置文件,可以快速的将项目运行起来。
我们找到web模块中的application.properties文件 这是一个全局的配置文件,存放于项目的中resources目录中。配置文件支持properties文件和yml文件。yml文件的层级语法更要清晰写。
我们来删除项目中的application.properties的文件(如果项目中存在的话),新建一个application.yml文件,修改文件内容如下
server:
port: 8001
重新启动项目,访问http://localhost:8001/getlist
注意下语法
1 yml层级接口,第二行的内容要加上一个tab键
2 第二行的:后边要加上一个空格 然后在去写上内容
我们会看到 正确的返回了JSON内容,而8080已经不能访问。这就是习惯优于配置,框架默认给我们的设置一个启动端口,不需要我们再去指定端口,但是我们依然可以重新配置来覆盖默认的内容。
自定义配置
有时候我们需要配置一些信息常量值
我们再次修改application.yml文件,内容如下
server:
port: 8001 test:
test1: 哈哈
test2: 123456
修改Testcontroller中的代码,将我们写好的配置内容绑定到字段上,内容如下
@RestController
public class Testcontroller { @Autowired
TestService testService; @Value("${test.test1}")
private String test1; @Value("${test.test2}")
private String test2; @GetMapping("/sayhello")
public String sayHello() {
return "Hello Word";
} @GetMapping("/getlist")
public List<TestDto> getlist(){
return testService.getTestList();
} @GetMapping("/gettest")
public String gettest(){
return test1+test2;
}
}
访问http://localhost:8001/gettest
看到返回值:哈哈123456
说明我们的配置文件已经生效了
多配置环境
一般我们在开发的过程中,不同的环境需要不同的配置文件。比如我们 数据库连接字符串,正式和测试,和开发环境中的都不一样
我们先创建三个文件
application-dev.yml 本地开发环境的配置文件
application-testyml 测试环境中的配置文件
application-prod.yml 正式环境的配置文件
我们再次修改这些内置文件内容如下
application.yml文件
server:
port: 8001 spring:
profiles:
active: dev
application-dev.yml
test:
test1: 开发环境
test2: 123456
application-prod.yml
test:
test1: 正式环境
test2: 123456
application-test.yml
test:
test1: 测试环境
test2: 123456
我们重新运行项目 访问http://localhost:8001/gettest
我们会看到返回值 :开发环境123456
我们再次修改active值为 test
再次访问 http://localhost:8001/gettest
我们会看到返回值 : 测试环境123456
说明我们修改的多环境已经生效了
我们在按照上一篇文章的方式进行项目打包
切换到web的tartget目录中执行命令
java -jar somefun-web-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod
我们再次访问 http://localhost:8001/gettest
会发现返回内容:正式环境123456
同样的我们也可以在命令行中指定其他的环境参数值
这里只是列举了一些简单的使用方式,更加详细的配置内容可以关注SpringBoot官方文档https://docs.spring.io/spring-boot/docs/2.1.1.RELEASE/reference/htmlsingle/
3 springboot配置文件的更多相关文章
- 解决spring-boot配置文件使用加密方式保存敏感数据启动报错No decryption for FailsafeTextEncryptor. Did you configure the keystore correctly
spring-boot配置文件使用加密方式保存敏感数据 application.yml spring: datasource: username: dbuser password: '{cipher} ...
- springboot配置文件中使用当前配置的变量
在开发中,有时我们的application.properties某些值需要重复使用,比如配置redis和数据库或者mongodb连接地址,日志,文件上传地址等,且这些地址如果都是相同或者父路径是相同的 ...
- SpringBoot 配置文件存放位置及读取顺序
SpringBoot配置文件可以使用yml格式和properties格式 分别的默认命名为:application.yml.application.properties 存放目录 SpringBoot ...
- [SpringBoot] - 配置文件的多种形式及JSR303数据校验
Springboot配置文件: application.yml application.properties(自带) yml的格式写起来稍微舒服一点 在application.properties ...
- 将springboot配置文件中的值注入到静态变量
SpringBoot配置文件分为.properties和.yml两种格式,根据启动环境的不同获取不同环境的的值. spring中不支持直接注入静态变量值,利用spring的set注入方法注入静态变量 ...
- SpringBoot配置文件 application.properties详解
SpringBoot配置文件 application.properties详解 本文转载:https://www.cnblogs.com/louby/p/8565027.html 阅读过程中若发现 ...
- Spring-Boot配置文件数据源配置项
Spring-Boot配置文件数据源配置项(常用配置项为红色) 参数 介绍 spring.datasource.continue-on-error = false 初始化数据库时发生错误时,请勿停止 ...
- 【日常错误】spring-boot配置文件读取不到
最近在用spring-boot做项目时,遇到自定义的配置文件无法读取到的问题,通过在appcation.java类上定义@PropertySource(value = {"classpath ...
- SpringBoot——配置文件加载位置及外部配置加载顺序
声明 本文部分转自:SpringBoot配置文件加载位置与优先级 正文 1. 项目内部配置文件 spring boot 启动会扫描以下位置的application.properties或者applic ...
- 【SpringBoot】SpringBoot配置文件及YAML简介(三)
SpringBoot配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的; application.properties application.yml 配置文件的作用:修改Spr ...
随机推荐
- 如何使用socket进行java网络编程(五)
本篇记录: 1.再谈readLine()方法 2.什么是真正的长连接 最近又参与了一个socket的项目,又遇到了老生常谈的readLine()问题:对方通过其vb程序向我方socketServer程 ...
- Navicat 12破解工具 +安装包
下载地址: https://www.lanzous.com/b657322/ 密码:1j9x zip解压密码:gubin 下载完成 是这样的 先安装第一个 安装完成后 不要打开 ,把第二个复制到安 ...
- MySQL中整型和字符串类型指定长度的含义
引入: int(5)和char(5)或者varchar(5)中的数字指的是什么意思?是字节数,还是字符长度?为什么在整型中指定了int(5)却可以输入123456? 答案是后者,不管是整型还是字符串类 ...
- PHP中日期函数
1,转化为时间戳函数:strtotime() 本函数接受一个包含美国英语日期格式的字符串并尝试将其解析为Unix时间戳,其值相对于now参数给出的时间,如果没有提供此参数则使用系统当前时间. < ...
- maven配置时mvn不是内部或外部问题解决
参考这里
- 听补天漏洞审核专家实战讲解XXE漏洞
对于将“挖洞”作为施展自身才干.展现自身价值方式的白 帽 子来说,听漏洞审核专家讲如何挖掘并验证漏洞,绝对不失为一种快速的成长方式! XXE Injection(XML External Entity ...
- webpack快速入门——如何安装webpack及注意事项
1.window+R键,输入cmd打开命令行工具,输入 mkdir XXXX(XX:文件夹名): 2.cd XXX 进入刚刚创建好的文件夹里,输入cnpm install -g webpack (安装 ...
- 为autoLayout 增加标识符,方便调试
 如上图,是一个十分简单的布局. root view 上加了一个 button 和一个 webview. 不加标识符的样子 视图层级中没有标识  只有 UIView.WKWebView 之类,如果 ...
- UINavigationBar 的视觉效果
有很多属性可以决定导航栏的视觉效果,下面做一下总结 barStyle 属性 白底黑字 default 黑底白字 black blackOpaque 和 blackTranslucent 已被 Depr ...
- 钉钉h5项目实战|仿钉钉聊天|h5移动端钉钉案例
最近一直着手开发h5仿钉钉项目,使用到了h5+css3+zepto+wcPop2等技术进行开发,实现了消息.表情.动图发送,仿QQ多人拼合图像,可以选择本地图片,并可以图片.视频预览,仿微信发红包及打 ...