SpringBoot2 配置
一.Properties与Yaml
SpringBoot支持properties与yaml两种配置文件application.properties/application.yml
yaml简单使用
1.yaml简介
yaml是以数据为中心的,比json,xml更适合做配置文件
2.yaml基本语法
k: v:形式的键值对,:后面必须有空格
以空格缩进来控制层级关系
大小写敏感
例子:
server:
port: # 设置默认端口号
servlet:
path: /init
值的写法
k: v 直接书写
【字符串默认不用加上单引号或者双引号】
"":双引号;不会转义字符串里面的特殊字符;
'':单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据
对象
k: v:在下一行来写对象的属性和值的关系
例如:
persion:
name: zhangsan
age:
行内写法:
persion: {name: zhangsan,age: }
数组(List,Set,Map)
普通数组,List,Set 使用 -值 来表示数组中的一个元素
arrays:
- arrays1
- arrays2
- arrays3
Map使用k: v的形式来表示
map:
k1: v1
k2: v2
k3: v3
使用配置文件注入
在pom.xml引入依赖,用于注释处理器生成自己的元数据
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
实体类:
/**
* persion类
*/
@Component
@ConfigurationProperties(prefix = "persion")
public class Persion { private String name;
private int age;
private boolean isMan;
private Date birth; private String[] hobbys;
private Map<String,String> skills;
private List<String> enjoys; // 省略getter setter toString }
yaml配置:
persion:
name: zhangsan
age:
isMan: true
birth: //
hobbys:
- 篮球
- 足球
- 乒乓球
skills:
java: javase
python: ai
enjoys:
- eating
- running
- playgames
测试类
@Autowired
Persion persion; @Test
public void contextLoads() {
System.out.println(persion);
}
yaml语法教程
http://www.ruanyifeng.com/blog/2016/07/yaml.html
二.服务器配置
更改端口:
server.port=
更改上下文访问路径,SpringBoot默认范文路径为“/”:
server.servlet.context-path=/base
常见的服务器配置
server.port:SpringBoot监听端口
server.error.path:错误处理路径
server.servlet.context-path:配置SpringBoot默认上下文路径
三 日志配置
定义日志级别
日志级别 ERROR WARN DEBUF INFO TRACE 级别从高到低
# 输出日志级别 ERROR WARN DEBUF INFO TRACE,日志只会打印当前级别,以及高于当前级别的日志
logging.level.root=info
输出日志到文件
# 输出日志到文件
logging.file=/my.log
定义日志输出格式
输出到控制台日志格式:
logging.pattern.console=【%level %date %logger %thread %M %L %m】 %n
输出到日志文件的日志格式:
# 定义输出到文件的日志格式
logging.pattern.file=【%level %date %logger %thread %M %L %m】 %n
日志格式基本参数
属性 内容
%level 表示输出日志级别
%date 表示日期发生时的时间
%logger 用于输出Logger名字,包名+类名,{n}限定输出长度
%thread 当前线程名
%M 日志发生时方法的名字
%L 日志调用所在代码行
%m 日志消息
%n 日志换行
日志使用例子:
public class Hello {
public static void main(String[] args) {
Logger logger = LoggerFactory.getLogger(Hello.class);
logger.debug("Hello World");
}
}
日志的输出格式:
%d:表示日期时间 %thread:表示线程名 %‐5level:级别从左显示5个字符宽度 %logger{}:表示logger名字最长50个字符,否则按照句点分割。 %msg:日志消息 %n:是换行符 %d{yyyy‐MM‐dd HH:mm:ss.SSS} [%thread] %‐5level %logger{} ‐ %msg%n
例子:
设置application.properties的日志配置
# 设置日志等级
logging.level.com.fjut.*=trace # 设置在控制台输出的日志的格式
logging.pattern.console=[%d{yyyy‐MM‐dd}]-[%level]-[%msg]-%logger{}%n # 指定文件中日志输出的格式
logging.pattern.file=%d{yyyy‐MM‐dd} === [%thread] === %level === %logger{} ==== %msg%n
# 设置输出日志文件
logging.file=/my.log
测试:
//打印五个等级的日志
@Test
public void contextLoads() {
Logger logger = LoggerFactory.getLogger(getClass());
logger.error("error ...");
logger.warn("warn ...");
logger.debug("debug ...");
logger.info("info ...");
logger.trace("trace ...");
}
SpringBoot2 配置的更多相关文章
- 【2.0】SpringBoot2配置Druid数据源及监控
什么是Druid? Druid首先是Java语言中最好的数据库连接池,也是阿里巴巴的开源项目.Druid是阿里巴巴开发的号称为监控而生的数据库连接池,在功能.性能.扩展性方面,都超过其他数据库连接池, ...
- SpringBoot2配置prometheus浏览器访问404
背景:SpringBoot2的项目要配置 actuator + prometheus的健康检查,按照教程配置好之后再浏览器测试 http://localhost:port/prometheus 后40 ...
- SpringBoot2 配置多数据源,整合MybatisPlus增强插件
本文源码:GitHub·点这里 || GitEE·点这里 一.项目案例简介 1.多数据简介 实际的项目中,经常会用到不同的数据库以满足项目的实际需求.随着业务的并发量的不断增加,一个项目使用多个数据库 ...
- springboot2 配置 https
package cn.xiaojf.aibus.configure; import org.apache.catalina.Context; import org.apache.catalina.co ...
- springboot2配置druid数据库连接池
注意配置以下的依赖: <!-- 引入druid数据源--> <dependency> <groupId>com.alibaba</groupId> &l ...
- 从零开始学springboot-2.配置项目
### 配置项目 #### 将application.properties改名为application.yml #### 在resources文件夹中(和上面那个配置文件同一路径下)新建一个文件app ...
- Spring Boot 数据库连接池 Druid
简介 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问 ...
- 前后端分离 vue+springboot 跨域 session+cookie失效问题
环境: 前端 vue ip地址:192.168.1.205 后端 springboot2.0 ip地址:192.168.1.217 主要开发后端. 问题: 首先登陆成功时将用户存在session ...
- springboot+swagger接口文档企业实践(上)
目录 1.引言 2.swagger简介 2.1 swagger 介绍 2.2 springfox.swagger与springboot 3. 使用springboot+swagger构建接口文档 3. ...
随机推荐
- JS代码判断浏览器类型以及版本
browserVersion:function(){ var explorer = window.navigator.userAgent; if (explorer.indexOf("MSI ...
- 再读c++primer plus 005
对象和类: 1.类和结构的唯一区别是结构的默认访问类型是public,而类为private: 2.其定义位于类声明中的函数都将自动成为内联函数,也可以在类声明外定义成员函数,并使其成为内联函数,为此只 ...
- Bootstrap之Bootstrap组件
一 文本居中 col-xx-offset-xx:水平居中 center-block:使用于不涉及float标签的水平居中,也不涉及列的居中,让哪里居中就写到哪里,本质是:margin:0 auto. ...
- 2019.01.23 hdu1693 Eat the Trees(轮廓线dp)
传送门 题意简述:给一个有障碍的网格图,问用若干个不相交的回路覆盖所有非障碍格子的方案数. 思路:轮廓线dpdpdp的模板题. 同样是讨论插头的情况,只不过没有前一道题复杂,不懂的看代码吧. 代码: ...
- 2018.12.17 bzoj3667: Rabin-Miller算法(Pollard-rho)
传送门 Pollard−rhoPollard-rhoPollard−rho板题. 题意简述:给出几个数,让你判断是不是质数,如果不是质数就求出其最大质因子,数的大小为1e181e181e18以内. 先 ...
- ES6通过使用babel兼容到ie9
1.打开这个地址: https://unpkg.com/babel-standalone@6/babel.min.js 新建babel.min.js,把代码复制进去,然后在jq项目里引用. 2.在下面 ...
- caffe 笔记
caffe模块: blob:caffe中数据的封装,用于layer上流动 layer:输入层.输出层.神经网络层的抽象 net:神经网络结构,将layer层叠关联起来 solver:定义神经网络训练和 ...
- springboot+mysql实现quartz集群搭建
一.基本概念 Quartz核心的概念:scheduler任务调度.Job任务.Trigger触发器.JobDetail任务细节. scheduler任务调度: 是最核心的概念,需要把JobDetail ...
- s11.1 lsof:查看进程打开的文件
功能说明 lsof 全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件. [语法格式] l ...
- WordPaster-KesionCMS V8整合教程
1.上传WordPaster文件夹 2.上传ckeditor3x插件文件夹 4.修改ckeditor编辑器的config.js文件,启用插件,在工具栏中增加插件按钮 5.在文章页面增加插件初始化代码 ...