SpringBoot SpringBoot 原理篇 2 自定义starter 2.5 使用属性配置设置功能参数【2】

news2025/1/24 5:21:24

SpringBoot

【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】

SpringBoot 原理篇

文章目录

      • SpringBoot
      • SpringBoot 原理篇
      • 2 自定义starter
        • 2.5 使用属性配置设置功能参数【2】
          • 2.5.1 直接开干
          • 2.5.2 小结

2 自定义starter

2.5 使用属性配置设置功能参数【2】

2.5.1 直接开干

上一节我们把【模式切换】、【是否清数据】两个配置加上了

在这里插入图片描述

还剩了一个

cycle,输出频率【日志显示周期】

这个还真和另外两个不太一样

这个配置值的使用位置

在这里插入图片描述

在注解里面,好家伙,这下知道不一般了

这里就不能用${} 的方式读取,有值还好说

在这里插入图片描述

运行效果

在这里插入图片描述

如果没给值

在这里插入图片描述

再次运行

在这里插入图片描述

直接就挂掉了【就是读取不到数据】

虽然也有解决办法

@Scheduled(cron = "0/${tools.ip.cycle:5} * * * * ?")

5就是默认值

再次安装运行

在这里插入图片描述

这样表面上是解决了,不一样

在这里插入图片描述

很明显,压根儿就没用咱们的属性值【读取bean 中的属性值才是真正的解决方案】

先来个测试

package cn.dingjiaxiong.properties;

import org.springframework.stereotype.Component;

/**
 * ClassName: TestValue
 * date: 2022/10/25 20:13
 *
 * @author DingJiaxiong
 */

@Component("abc")
public class TestValue {

    private Integer cycle = 1;

    public Integer getCycle() {
        return cycle;
    }

    public void setCycle(Integer cycle) {
        this.cycle = cycle;
    }
}

这就是一个bean, 里面有一个属性值cycle,默认为1

在这里插入图片描述

这样就可以读取到了

还有一步,加载测试bean

在这里插入图片描述

OK,直接启动这个服务,看看效果

在这里插入图片描述

可以看出是可以的【即这个值可以加载上】

OK, 测试成功,记得恢复一下,现在要来真的了

先给配置属性类来个bean 名称

在这里插入图片描述

现在我们已经明着说了它是一个 bean 了

在自动配置类中,就不用EnableConfigurationProperties 了

在这里插入图片描述

注掉

仅仅让它加载就行了

在这里插入图片描述

业务层

@Scheduled(cron = "0/#{ipProperties.cycle} * * * * ?")

在这里插入图片描述

OK,安装测试

在这里插入图片描述

安装完成,运行SSMP

在这里插入图片描述

现在没配置值,默认就是用的属性值 5

OK,现在配一下

在这里插入图片描述

再次运行

在这里插入图片描述

OK, 成功了

回顾一下

  • 配置信息

在这里插入图片描述

  • 自定义bean名称

在这里插入图片描述

  • 放弃配置属性创建bean方式,改为手工控制

在这里插入图片描述

  • 使用#{beanName.attrName}读取bean的属性

在这里插入图片描述

2.5.2 小结
  1. 配置调整

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/40216.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【网络篇】第十八篇——ping的工作原理

目录 IP协议助手——ICMP协议 查询报文类型 差错报文类型 网络不可达代码为0 主机不可达代码为1 协议不可达代码为2 端口不可达代码为3 需要进行分片但设置不分片位片码为4 ping——查询报文类型使用 traceroute IP协议助手——ICMP协议 ping是基于ICMP协议工作的&a…

解决Redis Object Cache Pro插件无法使用高性能配置的解决方案

说明 辉哥演示站和本地使用的对象缓存都是redis,刚好手上有Redis Object Cache Pro插件,目前大多数用户都是用的是官方推荐的基础配置,并没有使用高性能配置(官方的说法是在毫秒内优化高流量站点),刚好辉哥…

java项目_第163期ssm药品电子商城系统_java毕业设计

java项目_第163期ssm药品电子商城系统_java毕业设计 今天分享的项目是《ssm药品电子商城系统》 该项目分为3个角色,管理员、用户、医生。 1、用户可以浏览前台,购买药品,并将药品加入到购物车; 用户还可以浏览医生信息,进行在线预…

《Java开发手册》三-代码风格

前言 这第三章主要是讲一些代码风格和规范,代码风格不影响程序运行,但对于团队的合作开发效率十分重要,相对前两章,这章内容较少 命名规约 命名符合本语言特性 每种语言都有自己的特殊风格,比如java不能以下划线&am…

Yarn模式部署Flink集群

一、环境准备 1、准备两台服务器server115 和server116安装好hadoop环境,其中server115配置hdfs的namenode,在server116上配置hdfs的SecondaryNameNode,server116配置yarn的 ResourceManager,启动hadoop集群 2、配置hadoop环境变…

Spring更简单的读取和存储对象

文章目录前言1、存储 Bean 对象1.1 前置工作1.2 添加注解存储 Bean 对象Controller(控制器存储)Service (服务存储)Repository(仓库存储)Configuration(配置存储)Component&#xff…

图书馆管理系统的设计与实现(论文+系统)_kaic

目 录 摘 要 第一章 绪论 1.1本课题研究背景与意义 1.2本课题国内外研究现状 第二章 开发技术介绍 2.1JDK的安装与配置 2.2HTML技术 2.3MySQL数据库管理系统 2.4JDBC的使用 第三章 系统分析 3.1系统的设计要求 3.2系统的设计原则 3.3系统的可行性分析 3.3.1技术可行性 3.3.2经济…

消息队列的概念和原理

消息队列一、使用消息队列的场景1.1、消息队列的异步处理1.2、消息队列的流量控制(削峰)1.3、消息队列的服务解耦1.4、消息队列的发布订阅1.5、消息队列的高并发缓冲二、消息队列的基本概念和原理2.1、消息的生产者和消费者2.2、Broker2.3、点对点消息队…

【Linux修炼】9.环境变量

每一个不曾起舞的日子,都是对生命的辜负。 环境变量本节目标1. 环境变量1.1 环境变量的概念1.2 环境变量PATH1.3 其他常见环境变量2. 和环境变量相关的命令2.1 env 命令2.2 export命令2.3 set命令2.4 unset命令3. 环境变量的意义4. 命令行参数4.1 什么是命令行参数&…

Array reduce() 如何计算元素内数值总合,计算总合

Array reduce() 如何计算元素内数值总合,计算总合 一、需求 有时候我们需要计算一个数组中所有元素的总合,这个数组可能是组 Number 类型,也可能是 Object 类型,像这样: const tempArray [2,3,4,6,456,89,24] // 或…

1.1MQ的基本概念,优劣势介绍及 RabbitMQ简介

1.MQ的基本概念 1.1 MQ概述 M Q 全称 Message Queue 消息队列,是在消息的传输过程中保存消息的容器。多用于分布式系统之间的通信。 1.2 MQ 的优势 1.2.1应用解耦 当订单系统强依赖库存系统,支付系统,物流系统等,若其中一个系…

Lambda求和函数在excel上的应用

目录 一、Lambda函数 二、Lambda求和函数 三 、实际表格运用 四、计算结果 一、Lambda函数 Lambda函数是使用lambda运算符创建的,其语法如下: 语法: lambda 参数:表达式 Python lambda函数可以包含任意多的参数,但…

Js逆向教程-16极验滑块 找到w加密位置

作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!😄 Js逆向教程-16极验滑块 找到w加密位置 一、如何下第一个断点 https://www.geetest.com/demo/slide-float.html 接口有多个w参数&…

springboot+vue 任课教师考评评价系统 Java 前后端分离

随着我国教育改革的发展,各大高校的大学生数量也在不断的增加,相对应如何去评价教学的质量问题也是很多高校一直以来所关注的内容。只有有了一个好的教学评价制度才能够让各大高校的教学质量稳步提升,本系统就是这样一个根据各项指标对教学质…

day77:注解、自定义注解、元注解

一、注解 1.什么是注解 注解是对程序进行标注和解释 2.常用注解 Override 描述子类重写父类的方法Deprecated 描述此方法已过时SuppressWarnings 压制警告 3.图解 4.注解与注释的区别 注解:给编译器看的,让虚拟机知道程序的特殊功能注…

【吴恩达机器学习笔记】

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📣专栏定位:为学习吴恩达机器学习视频的同学提供的随堂笔记。 📚专栏简介:在这个专栏,我将整理吴恩达机器学习视频的所有内容的笔记&…

PostgreSQL 同步复制原理解析

背景 Postgresql 在主备架构的场景下,支持同步流复制功能。本文将以一主一备架构为例,介绍同步流复制(同步备机)的工作方式以及内核代码的相关原理。 配置同步备机 工欲善其事,必先利其器。我们现简单的配置一个同步…

微信小程序图书管理系统

目 录 摘 要 I Abstract II 目 录 V 1 绪论 1 1.1研究背景 1 1.2研究课题和意义 2 1.3研究内容和论文结构 3 2 移动网络环境下图书管理系统的现状分析 4 2.1移动网络环境下图书管理系统的特点 4 2.2当前国内外移动网络环境下图书管理系统的现状 7 2.3微信给移动网络环境下图书管…

遥感技术及高分遥感影像在地震中的应用及高分二号获取

长期以来,地震预报监测、灾害调查、灾情信息获取主要依靠实地勘测手段,其获取的数据精度和置信度虽然较高,但存在工作量大、效率低、费用高和信息不直观等缺点。遥感技术手段可在一定程度上克服传统实地勘测手段的缺点,并具有其他…

我参加第七届NVIDIA Sky Hackathon——训练ASR模型

如何从0开始训练自己的ASR模型 第一步 获取NGC密钥 第二步 配置Ubuntu22.04的运行环境 第三步 开始训练ASR模型 文章目录如何从0开始训练自己的ASR模型前言一、获取NGC密钥二、配置Ubuntu22.04的运行环境1.安装 NVIDIA 驱动 460 以上版本2.安装 docker 与 nvidia-docker23.安装…