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

淄博网站建设公司推荐seo 360

淄博网站建设公司推荐,seo 360,网页开发论文,厦门建设网站的公司配置文件最主要的目的 : 解决硬编码的问题(代码写死) 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 "读取到的配置项key1"+key1;}
}

就能成功拿到了

名字一一对应

什么样的内容适合放在配置文件中呢?

那些可能会发生改变的信息,与我的程序运行没有太大关系的,我们就把它放在配置文件中

但是其实我们发现 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 List<String> 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 List<String> name;private HashMap<String,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 的优缺点 :

http://www.tj-hxxt.cn/news/1702.html

相关文章:

  • 电子商务的网站案例seo云优化
  • 摄影网站设计色盲怎么治疗
  • 国外数据网站广东免费网络推广软件
  • 做网站的公司是什么seo排名赚app
  • 网站建设文化传播有限公司免费的网页制作软件
  • 香港赛马会网站怎么做国际域名注册网站
  • 无网站如何做淘宝客2345网址导航设为主页
  • 响应式企业网站设计与实现申请自媒体平台注册
  • 二手车为什么做网站长沙网络推广营销
  • lnmp搭建网站杭州小程序建设公司
  • 大型网站建设费用平台推广是什么
  • 北京商场关门网站优化推广平台
  • 提交网站亚马逊关键词排名查询工具
  • 微信上的网站怎么做的吗发帖推广平台
  • 网站开发用的工具苏州网络推广seo服务
  • 做网站用的产品展示横幅怎样做推广是免费的
  • 电子商务网站建设课件网站接广告
  • wordpress导航背景图片深圳seo网站推广方案
  • 绵阳辉煌网站建设今日国内新闻最新消息大事
  • 怎么下学做衣服网站北京搜索优化推广公司
  • 德州市平原县建设局网站河南网站排名
  • 莱芜网站优化登录百度账号
  • wordpress增加导航栏seo关键词优化软件
  • 在线做txt下载网站友链交易平台
  • 秦皇岛营销式网站制作电商运营
  • 做网站靠教育赚钱日照高端网站建设
  • 网站建设书籍138ip查询网域名解析
  • 上海app设计公司seo搜索引擎优化人才
  • 自己做网站需要多少资金网站优化方法
  • 海口新闻网seo能从搜索引擎中获得更多的