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

SpringBoot:配置相关知识点

SpringBoot:多环境配置

配置知识点demo:点击查看LearnSpringBoot02

点击查看更多的SpringBoot教程

一、@SpringBootApplication

@SpringBootApplication 来标注一个主程序类,说明这是一个Spring Boot应用,运行这个类的main方法来启动SpringBoot应用
在这里插入图片描述

二、@Configuration

@Configuration 指明当前类是一个配置类,就是来替代之前的Spring配置文件
在配置文件里通过 标签来添加组件
在这里插入图片描述
测试结果图
在这里插入图片描述

三、配置文件注入

1、@ConfigurationProperties

将配置文件中的每一个属性的值,映射到这个组件中;
@ConfigurationProperties作用:告诉springboot 将本类中的所有属性和配置文件中相关的配置进行绑定;
prefix = “” 配置文件中哪个下面的所有属性进行一一映射
只有这个组件是容器中的组件,才能使用容器提供的@ConfigurationProperties功能;
支持JSR303进行配置文件值校验

2、 @Validated

@Validated的作用:对数据进行校验,只有在 ConfigurationProperties 配置里生效;
当校验不通过的时候,程序会抛出400异常,阻止方法中的代码执行,这时需要再写一个全局校验异常捕获处理类,然后返回校验提示。

示例person.java代码图
在这里插入图片描述
在这里插入图片描述

测试person配置类结果
在这里插入图片描述

3、 @Value

@Value只能读取基本类型的数据,复杂类型的不支持;
不支持JSR303数据校验;

示例person2.java图
在这里插入图片描述

@ImportResource

@ImportResource:导入Spring的配置文件,让配置文件里面的内容生效:

示例LearnSpringBoot02Application.java代码
在这里插入图片描述

beans.xml代码
在这里插入图片描述

测试@ImportResource结果
在这里插入图片描述

pom.xml代码

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.1.1</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example.springconfig</groupId><artifactId>LearnSpringBoot02</artifactId><version>0.0.1-SNAPSHOT</version><name>LearnSpringBoot02</name><description>Demo project for Spring Boot Config</description><properties><java.version>17</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--        JSR303数据校验--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency><!--导入配置文件处理器,配置文件进行绑定就会有提示https://docs.spring.io/spring-boot/docs/3.1.1/reference/html/configuration-metadata.html#appendix.configuration-metadata.annotation-processor
--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
http://www.lryc.cn/news/294985.html

相关文章:

  • 在线JSON转SQL工具
  • 网络安全大赛
  • phpMyAdmin 未授权Getshell
  • PHP实现DESede/ECB/PKCS5Padding加密算法兼容Java SHA1PRNG
  • 亚马逊认证考试系列 - 知识点 - 安全组介绍
  • 【Golang】exec.command命令日志输出示例
  • Dijkstra算法(求最短路)
  • ipcf 核间通讯
  • 第七届西湖论剑·中国杭州网络安全技能大赛 AI 回声海螺 WP
  • SpringBoot 拦截器Intercepto的创建与基本使用
  • 爬虫工作量由小到大的思维转变---<第四十五章 Scrapyd 关于gerapy遇到问题>
  • 2024.2.4 awd总结
  • 仰暮计划|“用心感悟使我获取了艺术真谛,自律如始让我获得了人生成功,我将继续在艺术道路上走下去”
  • 网络原理——网络层
  • ideaIU-2023.2.1安装教程
  • JAVA面试题之三分布式和微服务的区别是什么?
  • electron实现软件(热)更新(附带示例源码)
  • 飞天使-k8s知识点12-kubernetes散装知识点1-架构有状态资源对象分类
  • mhz_c1f
  • Excel——高级筛选匹配条件提取数据
  • Python初学者学习记录——python基础综合案例:数据可视化——动态柱状图
  • 1.27马尔科夫链,抽样蒙特卡洛模拟(逆转化方法,接受拒绝矩阵),马尔科夫链蒙特卡洛MCMC,隐马尔科夫(HMM(V算法剪枝优化),NLP)
  • MC34063异常发热分析
  • 获取真实 IP 地址(一):判断是否使用 CDN(附链接)
  • 跨越财务困境,聚道云软件连接器如何助力企业轻松实现数字化转型?
  • Python接口自动化测试框架运行原理及流程
  • strtok的使用
  • 0206作业
  • 数据结构-栈
  • CentOS7搭建k8s-v1.28.6集群详情