北京海淀社保网站黑龙江建设网监理证书

当前位置: 首页 > news >正文

北京海淀社保网站,黑龙江建设网监理证书,app网站制作要多少钱,什么是网络营销?网络营销的特点有哪些?配置文件最主要的目的 : 解决硬编码的问题(代码写死) SpringBoot 的配置文件,有三种格式 1.properties
2.yaml 3.yml(是 yaml 的简写) SpringBoot 只支持三个文件
1.application.properties 2.application.yaml 3.application.yml yaml 和 yml 是一样的,学会一个就行…配置文件最主要的目的 : 解决硬编码的问题(代码写死) SpringBoot 的配置文件,有三种格式 1.properties  2.yaml 3.yml(是 yaml 的简写) SpringBoot 只支持三个文件  1.application.properties 2.application.yaml 3.application.yml yaml 和 yml 是一样的,学会一个就行 如果一个项目中同时存在 properties 和 yml ,虽然两个都会生效,但是 properties 的优先级更高 但是正常情况下都只有一个文件,多了容易乱 properties 的代码格式一般为键值对的样式,以 分割,单词小写,单词之间用 . 分割 下面是一些配置举例,配置端口号和配置数据库先不细说 我们自定义的配置该如何拿到运用呢? 我们创建一个类 package com.example.ioc.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController public class PropertiesController {//读取配置文件Value(\({demo.key1})private String key1;RequestMapping(/readkey)public String readkey(){return 读取到的配置项key1key1;} } 就能成功拿到了 名字一一对应 什么样的内容适合放在配置文件中呢? 那些可能会发生改变的信息,与我的程序运行没有太大关系的,我们就把它放在配置文件中 但是其实我们发现 properties 有很多冗余的信息 比如 想要解决这个问题,就可以使用 yml 配置文件的格式化了 我们先在 resources 底下创建一个文件,application.yml yml 文件对比 properties 文件格式,yml 文件把 . 换成冒号换行,key后面用冒号赋值 这样就可以把端口改为 9090 了 但是我们稍作修改,把9090 前面的空格删掉,再次运行程序,发现修改端口失败了 yml 的格式有严格要求,我们要在值前面的冒号的后面加空格,空格不可省略 我们对数据库相关配置进行修改的样式如下 yml 的自定义配置该如何写并且使用呢? 然后创建一个类 package com.example.ioc.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController public class YmlController {Value(\){demo.key1})public String key1;RequestMapping (/readYml)public String readYml(){return key1;} } 这样就能成功使用了 我们再看看多个数据 PostConstruct//这是一个初始化注解,在属性注入完成之后就会执行这个方法 package com.example.ioc.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import javax.annotation.PostConstruct;RestController public class YmlController {Value(\({demo.key1})public String key1;Value(\){demo.key2})public String key2;Value(${demo.key3})public String key3;RequestMapping (/readYml)public String readYml(){return key1;}PostConstruct//这是一个初始化注解,在属性注入完成之后就会执行这个方法public void init(){System.out.println(key1:key1);System.out.println(key2:key2);System.out.println(key3:key3);} } 我们再看看单双引号的区别 双引号里面的 \n 是换行 单引号会对特殊字符进行转义,因为\n 本身表示的意思是换行,但是使用单引号的时候,内容变成了 \n 而不是换行,所以认为是转义 yml 该如何配置对象? 配置文件为 再创建一个student类 package com.example.ioc;import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;Component ConfigurationProperties(prefix student) Data public class Student {private Integer id;private String name;private Integer age; } 然后就能运行了  package com.example.ioc.controller;import com.example.ioc.Student; 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.RestController;import javax.annotation.PostConstruct;RestController public class YmlController {Autowiredpublic Student student;PostConstruct//这是一个初始化注解,在属性注入完成之后就会执行这个方法public void init(){System.out.println(student:student);} } yml 如何配置集合呢? package com.example.ioc.model;import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;import java.util.List;Component ConfigurationProperties(prefix dbtypes) Data public class DBTypes {private ListString name; } package com.example.ioc.controller;import com.example.ioc.model.DBTypes; import com.example.ioc.model.Student; 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.RestController;import javax.annotation.PostConstruct;RestController public class YmlController {Autowiredpublic DBTypes dbTypes;PostConstruct//这是一个初始化注解,在属性注入完成之后就会执行这个方法public void init(){System.out.println(dbTypes:dbTypes);} } 用数组去接收也是可以滴 记得要加空格哦 yml 也可以配置map import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;import java.util.HashMap; import java.util.List;Component ConfigurationProperties(prefix dbtypes) Data public class DBTypes {private ListString name;private HashMapString,String map; } package com.example.ioc.controller;import com.example.ioc.model.DBTypes; import com.example.ioc.model.Student; 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.RestController;import javax.annotation.PostConstruct;RestController public class YmlController {Autowiredpublic DBTypes dbTypes;PostConstruct//这是一个初始化注解,在属性注入完成之后就会执行这个方法public void init(){System.out.println(dbTypes:dbTypes);} } yml 的优缺点 :