黑龙江省建设厅网站的电话ppt软件下载免费版
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:55
当前位置: 首页 > news >正文
黑龙江省建设厅网站的电话,ppt软件下载免费版,网站备案需要ftp吗,商务网站的建设与维护文章目录 1. 配置文件的作用2. 配置文件格式3. 配置文件的使用方法3.1. properties配置文件3.1.1. 基本语法和使用3.1.2. properties优缺点分析 3.2. yml配置文件3.2.1. 基本语法与使用3.2.2. yml中单双引号问题3.2.3. yml配置不同类型的数据类型及null3.2.4. 配置对象3.2.5. 配… 文章目录 1. 配置文件的作用2. 配置文件格式3. 配置文件的使用方法3.1. properties配置文件3.1.1. 基本语法和使用3.1.2. properties优缺点分析 3.2. yml配置文件3.2.1. 基本语法与使用3.2.2. yml中单双引号问题3.2.3. yml配置不同类型的数据类型及null3.2.4. 配置对象3.2.5. 配置集合3.2.6. yml优点分析 4. properties与yml的区别5. 设置不同环境的配置文件 1. 配置文件的作用 SpringBoot 项目中所有重要的数据都是在配置文件中配置的比如∶ 数据库的连接信息包含用户名和密码的设置项目的启动端口第三方系统的调用秘钥等信息用于发现和定位问题的普通日志和异常日志还可以自定义配置如配置上传文件的保存地址信息等。 想象一下如果没有配置信息那么 Spring Boot 项目就不能连接和操作数据库甚至是不能保存可以用于排查问题的关键日志所以配置文件的作用是非常重要的。 配置文件中的配置类型有两类一类是系统配置项这种配置的格式都是固定的是给系统框架使用的另一种是用户自定义配置用户可以随意地规定配置项的格式又用户自行去设置和读取。
配置文件格式 SpringBoot 项目配置文件有两种一种是项目创建默认自带的的properties文件还有一种比较新的yml文件需要自己添加。 配置文件是存在于resources目录下的对于 SpringBoot 项目默认的配置文件配置文件名必须是application即application.properties或application.yml文件如果配置文件名不为application那就不能够被识别加载。 properties是可以和yml⼀起存在于⼀个项⽬当中的yml文件相比于properties文件做了一些优化如yml文件天然支持中文字符而properties文件默认是不支持中文字符的如果不进行字符配置输入中文字符就会有乱码现象。 当application.properties和application.yml两个文件共存时 虽然两个文件中的配置都会被加载但如果这两个配置⽂件中出现了同样的配置比如 properties 和 yml 中都配置了“server.port” 那么这个时候会以properties中的配置为主也就是.properties配置⽂件的优先级最⾼。 虽然理论上来讲 .properties 可以和 .yml 共存但实际的业务当中我们通常会采取⼀种统⼀的配置⽂件格式这样可以更好的维护降低故障率。
配置文件的使用方法 properties 配置文件是最早期的配置文件格式也是创建 Spring Boot 项目默认的配置文件。 3.1. properties配置文件 3.1.1. 基本语法和使用 基本语法 properties 是以键值的形式配置的key 和 value 之间是以“”连接的 使⽤“#”来添加注释信息。
key与与value之间不要加空格
keyvalue比如设置端口号我们可以使用配置项server.port来设置端口 server.port8088配置修改完毕后启动程序就可以看到端口号已经设置成配置文件中所设置的端口号了。
还有比如设置数据库配置项如下配置数据库 URL
spring.datasource.urljdbc:mysql://127.0.0.1:3306/tr?characterEncodingutf8useSSLfalse
配置数据库 username
spring.datasource.nameroot
配置数据库 password
spring.datasource.password111111
设置驱动
spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver有关更多系统的配置可以去看看官方文档https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties 除了设置配置文件的信息除了系统的配置我们还可以自定义配置比如
用户自定义配置
custom.namezhangsan custom.id666此时要读取配置文件中的信息我们可以使用Value注解来实现规则如下 // 要注意\({}不能省略 Value(\){配置信息key}) private String name;示例代码 package com.example.springboot.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody;Controller ResponseBody public class TestController2 {// 自定义配置和系统配置都可以读取Value(\({custom.name})private String name;Value(\){custom.id})private String id;Value(${server.port})private String port;RequestMapping(/coustom)public String sayHi() {return name : name id : id port : port;} }浏览器访问结果
3.1.2. properties优缺点分析 优点 配置文件结构清晰keyvalue不容易出错适合初学者。 缺点 写法上比较冗余臃肿yml 配置文件能够解决这个问题。 3.2. yml配置文件 yml 是 YMALYet Another Markup language的缩写翻译为另一种标记语言。 3.2.1. 基本语法与使用 基本语法 yml 是树型结构配置文件特别需要注意的是 key 和 value 之间需要使用英文冒号加空格空格一定是不能省略的。:后面空格一定不能省
key: value此时将上面的propertise转换成yml格式看一下。
配置端口
server:port: 8088
配置数据库
spring:datasource:url: jdbc:mysql://127.0.0.1:3306/tr?characterEncodingutf8useSSLfalseusername: rootpassword: 111111
自定义配置信息
custom:name: zhangsanid: 666这里读取 yml 配置文件的方式和 properties 配置文件是一样的就不再演示了。 3.2.2. yml中单双引号问题 我们尝试将配置文件中的配置信息设置成如下字样 string:str1: Hello \n Spring Boot.str2: Hello \n Spring Boot.str3: Hello \n Spring Boot.我们将这些配置信息注入到一个类我们尝试来读取它们这个代码 Controller 在 Spring Boot 启动时候会把 YmlString 对象注⼊到框架中当注⼊到框架中时会执⾏ PostConstruct 初始化方法就是此时读到的配置信息。 Controller public class YmlString {Value(\({string.str1})private String str1;Value(\){string.str2})private String str2;Value(${string.str3})private String str3;PostConstructpublic void postConstruct() {System.out.println(string.str1 str1);System.out.println(string.str2 str2);System.out.println(string.str3 str3);} }控制台输出结果
这就说明被双引号包裹的值是按照原语义执行的而被单引号包裹值特殊字符会发生转义像上面的例子就是\n转义成了\n所以就输出了\n最终就只是一个普通的字符串。 至于不加双引号的输出结果是因为 yml 中字符串默认是不加引号的就直接输出了。 3.2.3. yml配置不同类型的数据类型及null 格式如下字符串
string.value: Hello
布尔值true或false
boolean.value: true boolean.value1: false
整数
int.value: 10 int.value1: 0b1010_0111_0100_1010_1110 # ⼆进制
浮点数
float.value: 3.14159 float.value1: 314159e-5 # 科学计数法
Null~代表null
null.value: ~使用 package com.example.springboot.controller;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component;import javax.annotation.PostConstruct;Component public class TestController3 {Value(\({string.value})private String str;Value(\){boolean.value})private boolean bool;Value(\({float.value})private float flo;Value(\){null.value})private Integer nul;PostConstructpublic void postConsrtuct() {System.out.println(str: str);System.out.println(bool: bool);System.out.println(flo: flo);System.out.println(nul: nul);} }运行结果 3.2.4. 配置对象 对于 ym l配置文件还能进行对象的配置如设置一个Student对象 方式1 student:id: 1name: 张三age: 18方式2 student: {id: 1,name: 张三,age: 18}此时从配置文件读取自定义的对象就不可以使用 Value 注解来读取了需要使用ConfigurationProperties注解来进行对象的读取并且对应的类必须有getter和setter方法。 示例 学生类 我们这里就不自己写getter和setter方法了我们使用 Lombok 框架中的 Data 注解即可其中就包含了getset 和 toString免去了手动创建的步骤了。 import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;Data ConfigurationProperties(prefix student) Component public class Student {private int id;private String name;private int age; }使用类 package com.example.springboot.controller;import com.example.springboot.model.Student; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import javax.annotation.PostConstruct;Controller public class ConfigController {Autowiredprivate Student student;PostConstructpublic void postConsrtuct() {System.out.println(student);} }运行结果
3.2.5. 配置集合 yml 还能配置集合 比如配置 list 集合配置方式如下 方式1 dbtypes:name:- mysql- sqlserver- db2方式2推荐 dbtypes: {name: [mysql, sqlserver, db2]}获取与对象的获取方式一模一样只是现在需要类里面的一个属性为集合对象。 获取示例 与配置文件对应的对象。 import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;import java.util.List;Data ConfigurationProperties(prefix dbtypes) Component public class ConfigList {private ListString name; }使用类 package com.example.springboot.controller;import com.example.springboot.model.ConfigList; import org.springframework.stereotype.Controller;import javax.annotation.PostConstruct; import javax.annotation.Resource;Controller public class ConfigController {Resourceprivate ConfigList configList;PostConstructpublic void postConstruct() {System.out.println(configList.getName());} }运行结果
再比如配置 map 集合配置方式如下 方式1 tes:map:1: 张三2: 李四方式2 tes:maps: {1: 张三,2: 李四}获取示例 与配置文件对应的对象 package com.example.springboot.model;import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.Map;Data ConfigurationProperties(prefix tes) Component public class ConfigMap {private MapInteger, String map; }使用类 package com.example.springboot.controller;import com.example.springboot.model.ConfigMap; import org.springframework.stereotype.Controller;import javax.annotation.PostConstruct; import javax.annotation.Resource;Controller public class ConfigController2 {Resourceprivate ConfigMap configMap;PostConstructpublic void postConstruct() {System.out.println(configMap.toString());} }运行结果 3.2.6. yml优点分析 yml 是⼀个可读性⾼写法简单、易于理解它的语法和 JSON 语⾔类似。yml ⽀持更多的数据类型它可以简单表达清单数组、散列表标量等数据形态。它使⽤空⽩ 符号缩进和⼤量依赖外观的特⾊特别适合⽤来表达或编辑数据结构、各种配置⽂件等。yml ⽀持更多的编程语⾔它不⽌是 Java 中可以使⽤在 Golang、PHP、Python、Ruby、 JavaScript、Perl 中。properties与yml的区别 语法不同properties 是 以key value 的形式配置的键值类型的配置文件而 yml 使用的是类似于 json 格式的树型配置方式进行配置的yml 层级之间使用的是换行缩进的方式配置的key 和 value 之间使用英文冒号:加空格的方式设置的且空格不可省略。properties 为早期并且默认的配置文件格式但配置存在一定的冗余数据使用 yml 可以很好的解决数据冗余问题。yml 通用性更好支持更多语言如 Java、Go、Python如果是云服务器开发可以使用一份 yml 配置文件作为 Java 和 Go 的共同配置文件。yml 和 properties 可以共存但一个项目中建议使用统一的配置类型文件。 yml 相较于 properties 支持更多的数据类型如对象和集合。
设置不同环境的配置文件 在日常开发中通常会使用至少三个不同的环境开发环境dev、测试环境test和生产环境prod每个环境的配置都不相同包括数据库、端口、IP 地址等信息那么如何区分这些环境如何打包呢 Spring Boot 中提供了很好的多环境整合支持可以在打包和运行时自由切换不同的环境。 为了方便管理不同环境的配置可以将它们放在不同的配置文件中此时我们就需要创建不同环境的配置文件了例如application-dev.properties、application-test.properties和application-prod.properties。 需要注意的是配置文件的命名必须遵循application-name.properties或application-name.yml的格式其中的name可以自定义用于区分不同的环境。 因此在整个项目中需要有四个配置文件包括application.properties主配置文件是必须存在的和三个不同环境的配置文件。 此时创建了各个环境的配置文件条件下还需要告诉 SpringBoot 你要运行哪个环境主要有两种指定方式。 方式1在主配置文件中指定 可以在主配置文件application.properties或者application.yml中指定内容如下
指定运行环境为测试环境(application.properties)
spring.profiles.activetest# 指定运行环境为生产环境(application.xml) spring:profiles:active: pord此时SpringBoot 首先默认会加载application.properties文件而这个的文件配置又告诉 SpringBoot 去找指定环境的配置文件。 方式2运行 jar 的时候指定 SpringBoot 内置的环境切换能够在运行Jar包的时候指定环境命令如下 java -jar xxx.jar –spring.profiles.activetest
相关文章
-
黑龙江省建设厅的网站甘肃省建设厅查询网站
黑龙江省建设厅的网站甘肃省建设厅查询网站
- 技术栈
- 2026年03月21日
-
黑龙江省建设会计协会网站首页php钓鱼网站开发
黑龙江省建设会计协会网站首页php钓鱼网站开发
- 技术栈
- 2026年03月21日
-
黑龙江省建设会计协会网站wordpress安装怎么填
黑龙江省建设会计协会网站wordpress安装怎么填
- 技术栈
- 2026年03月21日
-
黑龙江省建设厅网站为什么做的网站别的浏览器打不开怎么办
黑龙江省建设厅网站为什么做的网站别的浏览器打不开怎么办
- 技术栈
- 2026年03月21日
-
黑龙江省建设网站首页百度网页版浏览器
黑龙江省建设网站首页百度网页版浏览器
- 技术栈
- 2026年03月21日
-
黑龙江省网站备案网页美化与布局教程
黑龙江省网站备案网页美化与布局教程
- 技术栈
- 2026年03月21日
