application.yml数据库配置
1.配置代码
server: port: 8001 #spring的配置 spring: datasource: type: com.alibaba.druid.pool.druiddatasource #数据源为druid driver-class-name: com.mysql.cj.jdbc.driver #数据库驱动 url: jdbc:mysql://localhost:3306/spring_cloud?usessl=false&useunicode=true&characterencoding=utf-8&servertimezone=asia/shanghai username: root password: root
<!--mysql驱动--> <dependency> <groupid>mysql</groupid> <artifactid>mysql-connector-java</artifactid> <version>5.1.24</version> <scope>runtime</scope> </dependency> <!--alibaba数据库数据源--> <dependency> <groupid>com.alibaba</groupid> <artifactid>druid</artifactid> <version>1.1.10</version> </dependency>
2.usessl
- ssl即为: secure sockets layer 安全套接字协议。
- usessl=true: 就是一般通过证书或者令牌进行安全验证。
- usessl=false: 就是通过账号密码进行连接。
注意:
- mysql 5.7之后的版本必须要加上usessl=false;
- 之前不用,默认是false。
3.useunicode=true&characterencoding=utf-8
设置之后,不管数据库是什么编码,读取的时候都会转换成utf-8,存取的时候还是会按数据库编码存。
4.servertimezone
时区配置,mysql8.0以上版本,url需要添加时区。
如:
#北京东八区 servertimezone=gmt%2b8 #上海时区 servertimezone=asia/shanghai
application.yml基础配置以及读取
配置文件的格式
1.springboot提供了3种配置文件的格式
- properties(传统格式/默认格式)
- yml(主流格式)
- yaml
配置文件
1. springboot中导入对应starter后,提供对应配置属性
2.书写springboot配置采用关键字+提示形式书写
配置文件的加载顺序
properties优先级>yml优先级>yaml优先级
不同配置文件中相同配置按照加载优先级相互覆盖,不同配置文件中不同配置全部保留。
yml文件内容
#简单配置 server: port: 80 #对象配置 users: name: zhangsan id: 18 #简单列表配置,- 后跟1个空格 likes: - 游泳 - 打球 - 读书 #列表中是对象,key: value,不要忘记:后的空格 books: [{name: 三国,id: 435},{name: 水壶,id: 6599}] #在配置文件中可以使用属性名引用方式引用属性 basedir: /usr/local/fire center: datadir: ${basedir}/data logdir: ${basedir}/log #属性值中如果出现转义字符,需要使用双引号包裹 lesson: "spring\tboot\nlesson"
读取yml配置
5.1 使用@value读取单个数据,属性名引用方式:${一级属性名.二级属性名...}
@value("${books[1].name}") private string bookname;
5.2 使用environment对象封装全部配置信息
- 使用environment对象封装全部配置信息
- 使用@autowired自动装配数据到environment对象中
@autowired private environment env; system.out.println(env.getproperty("books[1].name"));
5.3 自定义对象封装指定数据
- yml文件
datasource: driver-class-name: com.mysql.cj.jdbc.driver url: jdbc:mysql://localhost:3306/ssm_db?servertimezone=utc username: root password: root
- 自定义对象
@component //bean对象,由spring来管理 @configurationproperties(prefix = "datasource") //获取yml文件中datasource的属性,需要get和set方法,此处省略 public class mydatasource { private string driverclassname; private string url; private string username; private string password; }
- 在使用的地方,使用@autowired自动装配
@autowired private mydatasource mydatasource;
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论