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

wordpress无限加载提升关键词排名seo软件

wordpress无限加载,提升关键词排名seo软件,湘乡新闻头条,阜阳市建设工程网站目录 配置文件 语法结构 基本语法 多个properties配置文件 激活指定配置文件 ​在配置文件中指定 spring.profiles.activedev yml支持多文档块方式 运行测试 配置文件加载位置 获取配置文件中的数据 使用Value注解 使用ConfigurationProperties注解 Value获取值和…

目录

配置文件

语法结构

基本语法

多个properties配置文件

激活指定配置文件

​在配置文件中指定 spring.profiles.active=dev

yml支持多文档块方式

运行测试

配置文件加载位置

获取配置文件中的数据

使用@Value注解

使用@ConfigurationProperties注解

@Value获取值和@ConfigurationProperties获取值比较

松散绑定

SpEL

JSR303数据校验

 依赖导入

Bean Validation 规范内嵌的约束注解


配置文件

        SpringBoot使用一个全局的配置文件,配置文件名是固定的application.propertiesapplication.yml)。
        配置文件的作用:修改SpringBoot自动配置的默认值,SpringBoot在底层都给我们自动配置好了。

语法结构

application.properties

语法结构 :key=value

server.port=8081

application.yml(推荐)

基本语法

  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • 大小写敏感
  • 语法结构 :key:空格 value (空格不能省略)

server:
  port: 8081

application.yml 设置数据

YAML 支持的三种数据结构:

  • 字面量:单个的、不可再分的值
  • 对象:键值对的集合
  • 数组:一组按次序排列的值
server:port: 8081#普通key-value
name: 埼玉#对象
student:name: QiYuage: 3#对象行内写法
student: {name: QiYu,age: 3}#数组
pets:- cat- dog- pig#数组行内写法
pets1: [cat,dog,pig]

yaml可以直接给实体类赋值

person:name: 埼玉age: 3happy: truebirth: 2020/7/27maps: {k1: Flash,k2: King}lists:- code- musicdog:name: 波奇age: 3

多个properties配置文件

我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml
默认使用application.properties的配置

激活指定配置文件

​在配置文件中指定 spring.profiles.active=dev

application.properties:

server.port=8081
spring.profiles.active=dev

yml支持多文档块方式

spring:profiles:active: dev #指定属于哪个环境
---
server:port: 8083
spring:config:activate:on-profile: dev
---
server:port: 8084
spring:profiles: prod  #不推荐的写法

运行测试

配置文件加载位置

springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件

  • classpath:/config/
  • classpath:/


获取配置文件中的数据

使用@Value注解

在application.yaml中添加数据

dog:name: 波奇age: 3

将数据映射到Dog实体类中

@Data
@AllArgsConstructor
@NoArgsConstructor
@Component
public class Dog {@Value("${dog.name}")private String name;@Value("${dog.age}")private String age;
}

注意:导入@Value注解的包为:import org.springframework.beans.factory.annotation.Value;如果@Value提示错误很可能是导包错误。

运行测试,已将配置文件中的数据设置到实体类中

使用 @Value 注解有两点注意事项:

  • 对象要交给 Spring 容器管理,也就是需要在类上加 @Component 等注解;
  • 在静态变量上直接添加 @Value 注解是无效的。若要给静态变量赋值,可以在 set() 方法上加 @Value 注解。

使用@ConfigurationProperties注解

在application.yaml中添加数据

person:name: 埼玉age: 3happy: truebirth: 2020/7/27maps: {k1: Flash,k2: King}last-name: 光头披风侠lists:- code- musicdog:name: 波奇age: 3

使用注解将配置文件中的数据注入到实体类中(实体对象需要为Bean)

@ConfigurationProperties

编写Java实体类

@Data
@Component
@ConfigurationProperties(prefix = "person")
public class Person {private String name;private String age;private Boolean happy;private Date birth;private Map<String,Object> maps;private List<String> lists;private Dog dog;
}

运行测试,数据导入成功

注意:注解的实体对象的属性名要和配置文件中的属性名相同,否则不能设置成功


@Value获取值和@ConfigurationProperties获取值比较

项目@ConfigurationProperties@Value
功能批量注入配置文件中的属性一个个指定
松散绑定(松散语法)支持不支持
SpEL不支持支持
JSR303数据校验支持不支持
复杂类型封装支持不支持

注意:

  • 配置文件yml还是properties他们都能获取到值
  • 只是在某个业务逻辑中需要获取一下配置文件中的某项值,使用@Value
  • 使用javaBean来和配置文件进行映射,我们就直接使用@ConfigurationProperties

松散绑定

        yaml中写的last-name,这个和lastName是一样的“-”后面跟着的字母默认是大写的。这就是松散绑定。

在Person中加入lastName字段

@Data
@Component
@ConfigurationProperties(prefix = "person")
public class Person {private String name;private String age;private Boolean happy;private Date birth;private Map<String,Object> maps;private String lastName;private List<String> lists;private Dog dog;
}

  在yaml文件中加入last-name: 光头披风侠字段

person:name: 埼玉age: 3happy: truebirth: 2020/7/27maps: {k1: Flash,k2: King}last-name: 光头披风侠lists:- code- musicdog:name: 波奇age: 3

测试成功


SpEL

        详细使用参考:Spring-SpEL表达式超级详细使用全解-CSDN博客


JSR303数据校验

  • JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation
  • Bean Validation 是一个运行时的数据验证框架,用于校验数据合规性。
 依赖导入
<!--引入validation的场景启动器-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId>
</dependency>
Bean Validation 规范内嵌的约束注解
限制说明
@Null限制只能为null
@NotNull限制必须不为null
@AssertFalse限制必须为false
@AssertTrue限制必须为true
@DecimalMax(value)

限制必须为一个不大于指定值的数字

@DecimalMin(value)限制必须为一个不小于指定值的数字
@Digits(integer,fraction)限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction
@Future限制必须是一个将来的日期
@Max(value)限制必须为一个不大于指定值的数字
@Min(value)限制必须为一个不小于指定值的数字
@Past限制必须是一个过去的日期
@Pattern(value)限制必须符合指定的正则表达式
@Size(max,min)限制字符长度必须在min到max之间
@Past验证注解的元素值(日期类型)比当前时间早
@NotEmpty验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)
@NotBlank验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格
@Email验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式

给对象添加校验注解

public class QiYu {private Integer id;@NotBlank(message = "名称不能为空")private String name;private Date data;@NotNull(message = "年龄不能为空")private Integer age;@Pattern(regexp = "[0-9]" ,  message = "参数格式错误")private String Telephone;
}

Controller 中需要校验的参数Bean前添加 @Validated开启校验功能,紧跟在校验的Bean后添加一个BindingResult,BindingResult封装了前面Bean的校验结果。

    @GetMapping("/validation")public String into(@Validated QiYu qiyu , BindingResult bindingResult) {if(bindingResult.hasErrors()){Map<String,String> map = new HashMap<>();bindingResult.getFieldErrors().forEach((item) ->{String msg = item.getDefaultMessage();String fie = item.getField();map.put(fie,msg);});return map.toString();}return "200";}

运行测试,由于QiYu对象属性未赋值所以会提示错误信息。

至此鸣谢:SpringBoot的配置【配置文件、加载顺序、配置原理】(超详细)_springboot component 和service那个先启动-CSDN博客Spring Boot 使用 JSR303(@Validated) 实现参数校验_validator对应springboot3版本-CSDN博客

http://www.dtcms.com/wzjs/366294.html

相关文章:

  • 百度推广时间段在哪里设置武汉seo百度
  • 黄江镇做网站杭州seo排名优化
  • 扬州网站建设推广专家泉州seo按天计费
  • wordpress barthelmeseo技术快速网站排名
  • 个人网站建设方案书范文上海今天最新新闻10条
  • 合肥生态丽景网站建设360关键词排名推广
  • 一加网站开发策划公司
  • 汉滨区建设局网网站买友情链接有用吗
  • 烟台服装定制廊坊seo外包公司费用
  • 精品课程网站设计代码seo网站推广方式
  • 广州建网站的公司河北百度seo
  • 英文网站如何推广百度写作助手
  • 沧州市网站建设城关网站seo
  • 网站建设国内公司如何在各大平台推广
  • 惠州市住房和城乡建设局网站新人做外贸怎么找国外客户
  • 做好公司网站百度网盘人工客服
  • 网站排名权重怎么做灵感关键词生成器
  • 怎样用dw做网站主页关键词检测
  • 长沙县 网站建设网站的推广方案的内容有哪些
  • 网站后台栏目根据什么做的全国今日新增疫情
  • 加强统筹推进政府网站建设交易链接
  • 扎染毕业设计代做网站四川seo推广公司
  • 河北住建局与建设厅网站怎么推广比较好
  • 18款未成年禁止下载的app网络优化app
  • 机械行业网站建设制作开发方案企业网络营销推广方案策划
  • 简单网站建设软件软文街官方网站
  • 栗田工业大连有效公司网站哪年做的百度网页版进入
  • 双语网站模板五种营销工具
  • jsp怎样做网站域名收录查询
  • 青岛谁优化网站做的好最好用的搜索神器