SpringBoot复习(一)

news2024/11/17 22:35:32

底层注解

@Configuration

blog.csdnimg.cn/e3ad84c42e68480ca3572c518bb88802.png)

自定义配置类
@Bean:
可以通过@Bean注解将方法的返回值交给ioc容器来管理
组件id为方法名,组件的类型就是方法的返回类型。
默认组件是单例的
@Configuration:
告诉springboot这是一个配置类==之前的配置文件
配置类本身也是组件,由springioc管理
@Configuration(proxyBeanMethods = true)
表示代理对象调用方法,springboot会检查这个配置类中的组件是否在容器中,来保持组件单例

@Import

向ioc容器中添加组件,默认名字就是全类名

启动类中测试代码:

@SpringBootApplication
public class SpringbootLearn01Application {

    public static void main(String[] args) {
        //获取IOC容器
        ConfigurableApplicationContext run = SpringApplication.run(SpringbootLearn01Application.class, args);
        String[] beanNamesForType = run.getBeanNamesForType(User.class);
        for(String e:beanNamesForType)
        {
            System.out.println(e);
        }
    }

}

在这里插入图片描述
第一个就是@import添加的组件,第二个是通过@Bean向ioc中添加的组件

Conditional

条件装配:满足Conditional指定的条件,则进行组件注入

@ImportResource

导入spring配置文件,使其生效

@ImportResource("applicationContext.xml")

配置绑定@ConfigurationProperties

使用@ConfigurationProperties(prefix = “xxx”)来进行配置绑定的时候要确保bean在容器中,可以通过在实体类上添加@Component或者在配置文件中@EnableConfigurationProperties(类.class)
yml中:
在这里插入图片描述

第一种@Component+ConfigurationProperties(prefix = “Car”)

Car类:

package com.mao.exercise.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Component
@ConfigurationProperties(prefix = "car")
public class Car {
    private String id;
    private String name;
    private double price;
}

测试:
在这里插入图片描述

第二种@EnableConfigurationProperties(Car.class)+ConfigurationProperties(prefix = “Car”)

Car类
在这里插入图片描述
配置文件:
在这里插入图片描述

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

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

相关文章

【Linux】Makefile/make - 快速理解入门

目录 一、概念理解 1、基本概念 2、举例说明 二、编写 Makefile 1、依赖关系和依赖方法 2、文件清理 3、扩展内容 一、概念理解 1、基本概念 在我们学习 Linux 的过程中,我们可以直接使用 gcc 指令对程序的文本文件逐个进行编译处理,这是因为我…

ASP.NET Core 3.1系列(26)——Autofac中的实例生命周期

1、前言 前面的博客主要介绍了Autofac中的一些注册方法,下面就来介绍一下Autofac中实例的生命周期。之前在介绍ASP.NET Core内置IoC容器的时候说过,实例的生命周期有:瞬时生命周期、域生命周期、全局单例生命周期,而Autofac在这三…

mysql-8.0.31-winx64详细安装教程

一、下载MySQL MySQL官网:https://www.mysql.com/cn/ mysql-8.0.31-winx64下载地址:https://dev.mysql.com/downloads/mysql/ 2、下载结束后,解压到指定目录,笔者存放在D盘 ,为求简单,设置目录如下&#…

数据库历史数据年度备份

数据库历史数据年度备份 1、文件说明 matomo_backup.sql 备份库表结构脚本(这个根据自己数据结构准备,对于时间命名的表结构就不要加了,只加非时间命名的表结构) export.sh 数据导出脚本 clean.sh 源数据库历史数据清除脚本 2、需求与思路 需求 对…

怎么把PDF转换成图片?来看看这几个方法吧!

要说我们手机里最多的一种文件格式是什么?那应该就是图片了。相信在智能手机的时代,每个人手机里都会有至少几百上千张照片吧。毕竟有许多的事情我们都希望通过图片、照片的形式来记录下来。所以说如何将其他格式的文件变成图片格式就成了一个不大不小的…

开发那点事(十八)Vue开发PC桌面应用案例

写在前面的话 最近有在研究electron框架,踩了不少坑 ,现在把这几天研究的成果分享给大家。 研究成果 vue项目打包成exe可安装程序pc应用版本升级(需要配合oss服务器) vue应用配置 路由文件base配置为空mode模式为默认的hashv…

智慧门户、信创门户、国产门户、数字化门户,如何构建出七大特色亮点?

作者:郑文平 概述 调研结果显示,世界500强企业100%建设了适合自己的集团门户管理系统,也叫作办公门户或内网门户,并通过统一门户最终提升各自整体的业务管理水平和流转效率,没有建设门户的公司面临如下制约&#xff…

二,Spring IOC以及整合mybatis

0 复习 工厂设计模式 工厂设计模式代替new方式创建对象,目的是解耦合。 Spring做为工厂的使用 applicationContext.xml配置bean标签 如何从工厂中获取对象 //创建工厂 ApplicationContext ctx new ClassPathXmlApplicationContext("classpath:applicationCont…

AWS实战:Aurora到Redshift数据同步

什么是AuroraAmazon Aurora是一种基于云且完全托管关系型数据库服务,与MySQL 和 PostgreSQL 数据库兼容,完全托管意味着自动对数据库进行管理,包括管理数据备份、硬件配置和软件更新等操作Amazon Aurora提供了企业级性能Amazon Aurora提供了多…

【C/C++】动态顺序表详解(附完整源码)

本章内容 写在前面 1.静态与动态是指什么? 2.动态顺序表结构的定义 3.动态顺序表的函数接口实现 4.动态顺序表的问题及思考 5.关于顺序表的OJ题 6.OJ答案及解析 1.移除元素 2.删除有序数组中的重复项 ​3.合并两个有序数组 7.动态顺序表完整源码 1.SeqL…

《mSystems》最新研究| 李香真老师亲临凌波微课LorMe云讲堂解读贡嘎山反硝化菌群组装模式和驱动因素

2021年11月2日,李香真团队在《mSystems》期刊正式发表了题为“Patterns and Drivers of nirK-Typeand nirS-Type Denitrifier Community Assembly along an Elevation Gradient”的研究论文。该研究以青藏高原东部边界最高山——贡嘎山作为研究平台,比较…

小程序与普通网页开发有什么区别?

小程序的开发同普通的网页开发相比有很大的相似性,小程序的主要开发语言也是 JavaScript,但是二者还是有些差别的。 普通网页开发可以使用各种浏览器提供的 DOM API,进行 DOM 操作,小程序的逻辑层和渲染层是分开的,逻…

[前端笔记] 1.WEB基本概念

[前端笔记] 1.WEB基本概念基本概念1.资源 resourse2.链接3.HTTP 协议4.网页的真实样子:HTML静态网页与动态网页1.静态网页2.动态网页现代网站架构1.网站架构当我们访问一个网站时,后台都会发生什么事情捏?www——万维网 www:World Wide Web …

JAVA中医舌诊接口使用示例代码,JAVA舌象图特征人工智能识别代码,JAVA实现舌象特征检测与识别

中医舌诊接口使用示例-Java示例项目 中医舌诊健康状态检测API 1.此文档适用于集成中国中医舌诊开放平台功能的用户。 2.此文档说明了与中国中医舌诊开放平台的数据交互方法(restful接口),按需使用体质健康API、脏腑健…

盖子的c++小课堂——第十讲:字符

前言 我呢,早上刚发布第九讲,心里想的是马桶盖终于保住了,结果…… 生产队的刘同学:快,继续更,不然你下次吃泡面没调料包 其他粉丝:啊……啊对对对 啊!!!&…

OPTEE TA介绍

前言 本文主要介绍OPTEE的TA(Trusted Applications),翻译自官方文档:Trusted Applications — OP-TEE documentation documentation (optee.readthedocs.io) 有两种方法可以实现可信应用程序 (TA):伪 TA 和用户模式 T…

Speedoffice(word)如何输入特殊符号?

Word文档有时需要输入人民币单位“元”()的符号,那么怎么打出来了,以我最常用的Speedoffice为例和大家分享一下方法。步骤:1,首先运行office软件,新建一份word,找到“插入”菜单栏里…

再学C语言33:函数——地址运算符

C中最重要、最复杂的概念之一就是指针(pointer) 指针是用于存储地址的变量 例如:scanf()函数中使用地址作为参数 当需要改变调用函数中的某个值时,任何被调用的无返回值的C函数都需要使用地址参数完成该任务 一、地址运算符&a…

c语言重点

1、以下代码循环几次&#xff1f;&#xff08;面试题&#xff09; void test(){int i; // 局部变量 i 的值是不确定的for(;i<10;i){;} }答案是---------不确定&#xff0c;在 c 语言中局部变量 i 没有初始化&#xff0c;值是不确定的&#xff0c;所以 i 的值可能是…

GeoHash 的编码方法

对一组经纬度进行 GeoHash 编码时&#xff0c;我们要先对经度和纬度分别编码&#xff0c;然后再把经纬度各自的编码组合成一个最终编码。 对于一个地理位置信息来说&#xff0c;它的经度范围是[-180,180]。GeoHash 编码会把一个经度值编码成一个 N 位的二进制值&#xff0c;我…