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

武汉网络营销十年乐云seo长沙seo服务哪个公司好

武汉网络营销十年乐云seo,长沙seo服务哪个公司好,个性化网站成功的案例,南通网站建设优化SpringBoot配置文件 配置文件作用SpringBoot配置文件配置文件快速入手配置文件的格式properties配置文件说明基本语法读取配置文件properties缺点分析 yml配置文件说明yml基本语法yml使用进阶yml配置读取配置对象配置集合配置Mapyml优缺点 配置文件作用 计算机上有数以千计的配…

SpringBoot配置文件

  • 配置文件作用
  • SpringBoot配置文件
  • 配置文件快速入手
  • 配置文件的格式
  • properties配置文件说明
    • 基本语法
    • 读取配置文件
    • properties缺点分析
  • yml配置文件说明
    • yml基本语法
    • yml使用进阶
    • yml配置读取
    • 配置对象
    • 配置集合
    • 配置Map
    • yml优缺点

配置文件作用

计算机上有数以千计的配置⽂件, 我们使⽤的绝⼤多数软件, ⽐如浏览器, 微信, Idea, 甚⾄电脑, ⼿机, 都离不开配置⽂件. 我们可能永远不会直接与其中的⼤部分⽂件打交道,但它们确实以不同的形式散落在我们的计算机上, ⽐如C:\Users, C:\Windows⽂件夹, 以及各种 *.config, *.xml ⽂件

配置⽂件主要是为了解决硬编码带来的问题, 把可能会发⽣改变的信息, 放在⼀个集中的地⽅, 当我们启动某个程序时, 应⽤程序从配置⽂件中读取数据, 并加载运⾏

硬编码是将数据直接嵌⼊到程序或其他可执⾏对象的源代码中, 也就是我们常说的"代码写死".
⽐如⼿机字体⼤⼩
如果采⽤硬编码的⽅式, 就直接在程序中指定字体⼤⼩, 所有的⽤⼾使⽤的都是同⼀个字体⼤⼩但是不同的⽤⼾有不同的偏好, 我们可以把⼿机字体的⼤⼩放在配置⽂件中, 当程序启动时, 读取配置, 以⽤⼾设置的字体⼤⼩来显⽰

SpringBoot配置文件

SpringBoot⽀持并定义了配置⽂件的格式, 也在另⼀个层⾯达到了规范其他框架集成到SpringBoot的⽬的.

很多项⽬或者框架的配置信息也放在配置⽂件中, ⽐如:
• 项⽬的启动端⼝
• 数据库的连接信息(包含⽤⼾名和密码的设置)
• 第三⽅系统的调⽤密钥等信息
• ⽤于发现和定位问题的普通⽇志和异常⽇志等.

配置文件快速入手

我们在前⾯讲了Tocmat 默认端⼝号是8080, 所以我们程序访问时的端⼝号也是8080
但是如果8080端⼝号已经被其他进程使⽤了呢? 我们可以通过配置⽂件来修改服务的端⼝号
SpringBoot 在创建项⽬时, 就已经帮我们创建了配置⽂件
在这里插入图片描述
修改application.properties文件
在这里插入图片描述
在这里插入图片描述
重新启动服务 显示Tomcat启动端口号为9090

配置文件的格式

SpringBoot配置文件有以下三种

  • application.properties
  • application.yml
  • application.yaml

yml为yaml的简写 实际开发中出现的频率最高

特殊说明

  1. 理论上讲 .properties 和 .yml 可以并存在于⼀个项⽬中,当 .properties 和 .yml并存时,两个配置都会加载. 如果配置⽂件内容有冲突, 则以 .properties 为主, 也就是.properties 优先级更⾼.
  2. 虽然理论上来讲 .properties 可以和 .yml 共存,但实际的业务当中,我们通常会采取⼀种统⼀的配置⽂件格式,这样可以更好的维护(降低故障率)

properties配置文件说明

properties配置文件是最早期的配置文件格式,也是创建SpringBoot项目默认的配置文件

基本语法

properties 是以键值的形式配置的,key 和 value 之间是以"="连接的,如

在这里插入图片描述

读取配置文件

如果在项目中,想要主动的读取配置文件中的内容,可以使用@Value注解来实现
@Value注解使用${}的格式读取

@RestController
public class PropertiesController {@Value("${mykey.key1}")private String key1;@RequestMapping("/key")public String key(){return "接收到key" + key1;}
}

在这里插入图片描述

properties缺点分析

properties 配置是以 key-value 的形式配置的

在这里插入图片描述
从上述配置key看出,properties配置文件中会有很多的冗余的信息

要想解决这个问题,就可以使用yml配置文件的格式化了

yml配置文件说明

yml 是 YAML 是缩写,它的全称 Yet Another Markup Language 翻译成中⽂就是“另⼀种标记语⾔.我们先来学习yml的语法

yml基本语法

yml 是树形结构的配置⽂件,它的基础语法是"key: value".
key 和 value 之间使⽤英⽂冒号加空格的⽅式组成,空格不可省略
基础语法如下:

在这里插入图片描述

yml使用进阶

#字符串
string.value: hello#布尔值
boolean.value: true#整数
int.value: 10#浮点数
float.value: 3.1415926#null ~表示null
null.value: ~# ""空字符串 直接后面什么都不加就可以了,但是这种方式不直观,更多的表示使用引号括起来
empty.value: ""

yml配置读取

yml 读取配置的⽅式和 properties 相同,使⽤ @Value 注解即可

注意事项

value值加单双引号

字符串默认不⽤加上单引号或者双引号,如果加英⽂的单双引号可以表⽰特殊的含义。尝试在 application.yml 中配置如下信息
在这里插入图片描述
运行结果
在这里插入图片描述
从上述结果可以看出

  • 字符串默认不需要加上单引号或者双引号
  • 单引号会转义特殊字符.使其失去特殊功能,始终是一个普通字符
  • 双引号不会转义字符串里面的特殊字符,特殊字符会表示本身的含义

配置对象

我们还可以在yml中配置对象

student:id: 1name: zhangsanage: 10#或者使用行内写法
student: {id: 2, name: lisi, age: 20}

此时就不能用@Value 来读取配置中的对象了, 此时要使用另一个注解@ConfigurationProperties 来读取

具体实现

@ConfigurationProperties(prefix = "student")
@Component
@Data
public class Student {private int id;private String name;private int age;
}

在这里插入图片描述
在这里插入图片描述

配置集合

配置⽂件也可以配置 list 集合,如下所⽰:

dbtypes:name:- mysql- sqlserver- db2

集合的读取和对象⼀样,也是使⽤ @ConfigurationProperties 来读取的,具体实现如下:

@Data
@ConfigurationProperties(prefix = "dbtypes")
@Component
public class ListConfig {private List<String> name;
}

在这里插入图片描述
在这里插入图片描述

配置Map

配置⽂件也可以配置 map,如下所⽰:

maptypes:map:k1: v1k2: v2k3: v3

Map的读取和对象⼀样,也是使⽤ @ConfigurationProperties 来读取的,具体实现如下

@Data
@Component
@ConfigurationProperties(prefix = "maptypes")
public class MapConfig {private HashMap<String,String> map ;
}

在这里插入图片描述
在这里插入图片描述

yml优缺点

优点

  1. 可读性⾼,写法简单, 易于理解

  2. ⽀持更多的数据类型, 可以简单表达对象, 数组, List,Map等数据形态

  3. ⽀持更多的编程语⾔, 不⽌是Java中可以使⽤, 在Golang, Python, Ruby, JavaScript中也可以使⽤
    缺点

  4. 不适合写复杂的配置⽂件

  5. 对格式有较强的要求

http://www.dinnco.com/news/49628.html

相关文章:

  • 关于门户网站建设通报最新全国疫情消息
  • 推广型网站开发公司bt磁力种子搜索引擎
  • 网站开发确认函全国疫情高峰感染高峰
  • 免费做图素材网站有哪些培训机构咨询
  • 郑州市建设路第二小学网站培训心得体会300字
  • 绵阳的网站建设公司怎么让百度搜出自己
  • PHP网站开发技术期末作品重庆疫情最新消息
  • c语言做的网站有什么优缺点营销型网站建设模板
  • 电子商务网站建设的意义宜兴网站建设
  • 网站建设模拟海外营销推广服务
  • 创建网站有什么用seo整站优化更能准确获得客户
  • 深圳网站平台制作百度排名规则
  • 网站怎么做优化百度能搜索到市场营销四大分析方法
  • 乐达淄博网站建设制作简单网页制作成品和代码
  • 门户网站如何运营2345电脑版网址导航
  • 申请手机网站全网搜索引擎优化
  • 曲靖网站建设公司正规软件开发培训学校
  • 哪里可以学家装设计师哪个合肥seo好
  • 温州专业做网站为什么打开网址都是站长工具
  • 重庆网站建设推荐广点通广告投放平台
  • 泉州网站开发公司百度关键词竞价价格
  • 昆明做网站seo的营销公司
  • 招聘网站开发需求分析高端定制网站建设
  • 为什么做民宿网站网页设计模板html代码
  • 免费做网站的app百度seo怎么做网站内容优化
  • 淘宝网站小视频怎么做网络营销模式
  • 网站申请免费网站推广软件有哪些
  • 贵阳做网站多少钱优化设计三年级上册答案语文
  • 线上电商怎么做东莞关键词排名优化
  • 做网站被骗怎么办热搜榜排名前十