Spring相关API

news2024/11/24 3:32:32

⭐作者介绍:大二本科网络工程专业在读,持续学习Java,努力输出优质文章
⭐作者主页:@逐梦苍穹
⭐所属专栏:JavaEE、Spring

SpringAPI

  • 1、继承体系
  • 2、 getBean()

在这里插入图片描述

1、继承体系

在这里插入图片描述

在这里插入图片描述

上述继承体系中的主要类和接口包括:
  ● ApplicationContext:Spring容器的顶层接口,提供了获取Bean、管理Bean生命周期、依赖注入等核心功能。
  ● ConfigurableApplicationContext:可配置的应用上下文接口,扩展了ApplicationContext,添加了配置刷新、关闭等额外的配置功能。
  ● AbstractApplicationContext:抽象的应用上下文实现类,提供了通用的应用上下文功能和模板方法。
  ● AbstractRefreshableApplicationContext:抽象的可刷新应用上下文实现类,支持上下文的刷新和重新加载。
  ● AbstractXmlApplicationContext:抽象的XML配置文件应用上下文实现类,用于解析和加载XML配置文件。
  ● ClassPathXmlApplicationContext:从类路径下的XML配置文件中加载上下文的实现类。
  ● FileSystemXmlApplicationContext:从文件系统中的XML配置文件中加载上下文的实现类。
  ● XmlWebApplicationContext:在Web环境中从XML配置文件中加载上下文的实现类。
  ● AnnotationConfigApplicationContext:基于注解的应用上下文实现类,用于通过注解配置Bean。
在这里插入图片描述

类/接口描述
ApplicationContextSpring容器的顶层接口,提供了核心的容器功能和管理Bean的能力。
ConfigurableApplicationContext可配置的应用上下文接口,扩展了ApplicationContext,添加了配置刷新、关闭等额外的配置功能。
AbstractApplicationContext抽象的应用上下文实现类,提供了通用的应用上下文功能和模板方法。
AbstractRefreshableApplicationContext抽象的可刷新应用上下文实现类,支持上下文的刷新和重新加载。
AbstractXmlApplicationContext抽象的XML配置文件应用上下文实现类,用于解析和加载XML配置文件。
ClassPathXmlApplicationContext 从类路径下的XML配置文件中加载上下文的实现类。
FileSystemXmlApplicationContext 从文件系统中的XML配置文件中加载上下文的实现类。
XmlWebApplicationContext在Web环境中从XML配置文件中加载上下文的实现类。
AnnotationConfigApplicationContext 基于注解的应用上下文实现类,用于通过注解配置Bean。

2、 getBean()

getBean()方法是ApplicationContext接口定义的一个重要方法,用于从Spring容器中获取指定名称或指定类型的Bean实例。该方法的使用可以通过以下几种方式进行:

  1. 通过Bean名称获取Bean实例:
    在这里插入图片描述

这里的"beanName"是在Spring配置文件或通过注解定义的Bean的名称。如果找不到对应名称的Bean实例,将会抛出NoSuchBeanDefinitionException异常。
 2. 通过Bean名称和类型获取Bean实例:
在这里插入图片描述

这种方式在获取Bean实例时可以指定其具体的类型,以确保返回的对象是符合期望的类型。如果找不到对应名称和类型的Bean实例,也会抛出NoSuchBeanDefinitionException异常。
 3. 通过类型获取Bean实例:
在这里插入图片描述

在这种情况下,Spring容器会根据指定的类型去查找对应的Bean实例。如果找到多个符合类型的Bean实例,会抛出NoUniqueBeanDefinitionException异常。如果找不到任何符合类型的Bean实例,会抛出NoSuchBeanDefinitionException异常。
 4. 判断是否存在指定名称的Bean:
在这里插入图片描述

这个方法用于检查Spring容器中是否存在指定名称的Bean。返回值为true表示存在,返回值为false表示不存在。
getBean()方法是Spring框架中非常常用的一个方法,通过它可以方便地获取所需的Bean实例,并进行后续的操作和调用。它是实现依赖注入和控制反转的重要手段之一。

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

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

相关文章

WebRTC-STUN协议详解

1、STUN协议概述 STUN(Session Traversal Utilities for NAT)NAT会话穿透工具,STUN是一个Client/Server协议,支持请求/响应类型、指示类型两种类型。STUN作为ICE(Interactive Connectivity Establishment,…

【需求实现】输入多少就输出多少的拟合任务如何实现(一):数据集分割

神经网络中输入多少数据就输出多少数据的情况如何实现 导读数据集长什么样?怎么分割数据集?时间窗口分析模板我知道你很急,但你先别急 换个思路 导读 在实习的过程中遇到了这样一种需求:给定一条序列,并另外给定一条期…

使用ffmpeg将rtsp流转流实现h5端播放

主要实现rtsp转tcp协议视频流播放 ffmpeg下载安装(公认业界视频处理大佬) a、官网地址:www.ffmpeg.org/ b、gitHub:github.com/FFmpeg/FFmp… c、推荐下载地址:ffmpeg.zeranoe.com/builds/ (选择如下图) 2.配置ffmpeg…

期末复习【计算机系统结构】

期末复习【计算机系统结构】 前言推荐押题公式 期末复习重点第1章 计算机体系结构的基本概念1.3 定量分析技术1.3.1计算机系统设计的定量原理 第2章 计算机指令集结构第3章 流水线技术3.2 流水线的性能指标3.2.1 吞吐率3.2.2 加速比3.2.3 效率3.2.4 流水线性能分析举例 3.3 流水…

miniconda的安装

1. conda 是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换。 miniconda官网下载 miniconda清华镜像下载 找到自己想要安装的版本,我这里选择的是Miniconda3-4.7.12.1-Linux-x…

OUC编译原理实验报告 实验4:验证Yacc的使用/实验e4:从语言SUM到栈式计算机STACK的机器语言的翻译

编译原理实验报告 实验4:验证Yacc的使用 实验e4:从语言SUM到栈式计算机STACK的机器语言的翻译 中国海洋大学编译原理实验2023春 仅供同学参考思路 请勿直接抄袭 否则可能喜提0分 目录 文章目录 编译原理实验报告目录一.实验目的二.实验内容实验4实验…

多进程爬虫实战-摩托车网

前言 最近有遇到很多私信让我讲一讲多进程的爬虫,我发现大家对爬虫的框架写法和进程的理解有很多的问题和疑问,这次就带来一个小实战让大家理解多进程爬虫以及框架的写法 由于进程爬虫会对任何服务器都有一定的影响,本文仅供学习交流使用&…

【Linux后端服务器开发】C程序预处理

目录 一、源文件到可执行程序的过程 二、预定义符号 三、#define宏定义 四、条件编译 一、源文件到可执行程序的过程 预处理:去注释,宏替换,头文件展开,条件编译编译:c语言 ---> 汇编语言(语法分析…

JUC高级-0625

13. AbstractQueuedSynchronized之AQS 13.1 前置知识 公平锁和非公平锁可重入锁自旋思想LockSupport数据结构之双向链表设计模式之模板设计模式 13.2 AQS入门级别理论知识 AQS是什么? 字面意思:抽象的队列同步器,实现了通知唤醒的机制源代…

8通道250MSPS采样率16位AD采集FMC子卡-高速数据采集专家

FMC128是一款8通道250MHz采样率16位分辨率AD采集FMC子卡,符合VITA57.1规范,可以作为一个理想的IO模块耦合至FPGA前端,8通道AD将模拟信号数字化后通过高带宽的FMC连接器(HPC)连接至FPGA,从而大大降低了系统信…

电力智能运维是什么?有哪些优势?

设备检修维护是指对设备和系统进行必要的监视、维修和养护,通过日常的维护使设备保持良好的状态,确保设备安全、稳定、经济运行。由于时代的变迁,电力设备的检测维修变得也越来越智能化。采用的智能运维系统,可以更好的监控电力设…

BCSP-玄子Java开发之Java Web编程CH01_初识动态网页

BCSP-玄子Java开发之Java Web编程CH01_初识动态网页 1.1 B/S架构 B/S架构:浏览器/服务器 程序完全部署在服务器上使用浏览器访问服务器无需单独安装客户端软件 为什么要使用B/S架构 B/S与C/S比较B/S架构C/S架构软件安装浏览器需要专门的客户端应用升级维护客户…

NGINX PHP Cookie 会话中 PHPSESSID 缺少 HTTPOnly、Secure 属性解决方案

NGINX & PHP Cookie 会话中 PHPSESSID 缺少 HTTPOnly、Secure 属性解决方案 1 / 说明 基于安全的考虑,需要给cookie加上Secure和HttpOnly属性,HttpOnly比较好理解,设置HttpOnlytrue的cookie不能被js获取到,无法用document.coo…

linux系统的文件等相关操作命令

文章目录 1 查找文件(find、grep)2 查看文件内容(cat、more、less、head、tail)3 文件比较(diff)4 文本编辑器(vi、vim)5 文件压缩与解压(tar、tar.tgz、zip、rar、rar.g…

yum安装 lnmp

目录 一.nginx 的yum安装 1.关闭防火墙 2. 安装 nginx 3.安装依赖包 4.启动服务 二. 安装 mysql 5.7 (mariadb) 1.nysal的yum安装 2. 启动服务 3.在日志文件中找出root用户的初始密码 4.登录 mysql 5. 停止版本更新,稳定数据库的运行 三.php 的yum安装 1.…

rust abc(4): 定义变量并使用 mut 关键字

文章目录 1. 目的2. 不可变变量 (immutable variable)2.1 含义2.2 代码实例 3. 可变变量 (mutable variable)3.1 含义3.2 代码实例 4. 总结 1. 目的 学习 rust 语言中变量的定义方式, 包括普通变量(immutable)、可变变量(mutable…

轻量云服务器(香港)ping不通怎么解决?

​  在使用轻量云服务器(香港)时,有时候会出现ping不通的情况,这时候我们该怎么办呢? 首先,我们需要知道 ping 不通的原因。 ping 是一种基于 ICMP 协议的网络测试工具,它可以用来测试网络连接的质量和速度。如果 ping 不通&am…

英特尔进军晶圆代工,台积电“危”?

近来,半导体市场再次变得繁荣,尤其随着AI大型机模型的出现,半导体巨头们纷纷加大投资力度,以期在AI时代中积蓄新的增长。 作为AI大模型时代中最受益的厂商之一,英伟达稳居市场前沿,而AMD也加入了竞争&…

阿里发布2023年Java社招岗(正式版)面试题

每年的金三银四、金九银十都是各大公司招聘程序员的最佳时期,在这段时间内有好多程序员为面试而发愁,不知道如何才能收到好的 offer,拿到理想的薪资,实现自我的人生价值! 我想告诉大家的是,其实都不用愁的…

Web Worker是什么?怎么用?

71. Web Worker是什么?怎么用? Web Worker 是一种浏览器提供的 JavaScript 特性,它允许在后台线程中运行脚本,从而避免阻塞主线程并提高页面性能和响应速度。 1. Web Worker 的使用方法如下: 创建 Worker 对象&…