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

获取Spring容器Bean工具类

获取Spring容器Bean工具类

  • 1、创建SpringUtils工具类
  • 2、注册 SpringUtils工具类
  • 3、如果打包的是War方式,可能上面两个注册工具类的方法都没用

1、创建SpringUtils工具类

public class SpringUtils implements ApplicationContextAware {private static ApplicationContext applicationContext;@Overridepublic void setApplicationContext(ApplicationContext applicationContext) throws BeansException {SpringUtils.applicationContext = applicationContext;}/*** 根据类获取Bean* @param clazz 例如 String.class*/public static <T> T getBean(Class<T> clazz){return applicationContext.getBean(clazz);}
}

2、注册 SpringUtils工具类

这一步是显示注册SpringUtils工具类,其实可以使用 @Component注解标注在 SpringUtils类上面也可以,但是有些SpringBoot或者Spring版本当中注入 ApplicationContext 会为空,因为 ApplicationContext 是static变量,存在启动顺序上的问题,导致SpringUtils加载的时候,Spring容器还没有启动,所以无法注入进去

可以先试试 @Component注解,如果有效,则不需要这一步

resource 目录下创建 spring文件夹,创建 application-spring.xml

在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="SpringUtils" class=" com.demo.utils.SpringUtils" lazy-init="false" />
</beans>

3、如果打包的是War方式,可能上面两个注册工具类的方法都没用

打包war有些地方会不一样,请参考其他打包war获取springBean工具类的相关博客

相关文章:

获取Spring容器Bean工具类

获取Spring容器Bean工具类 1、创建SpringUtils工具类2、注册 SpringUtils工具类3、如果打包的是War方式&#xff0c;可能上面两个注册工具类的方法都没用 1、创建SpringUtils工具类 public class SpringUtils implements ApplicationContextAware {private static Application…...

图面试专题

一、概念 和二叉树的区别&#xff1a;图可能有环 常见概念 顶点&#xff08;Vertex&#xff09;&#xff1a; 图中的节点或点。边&#xff08;Edge&#xff09;&#xff1a; 顶点之间的连接线&#xff0c;描述节点之间的关系。有向图&#xff08;Directed Graph&#xff09;&…...

VUE的计算属性

<!DOCTYPE html> <html> <head> <meta charset"UTF-8" /> <title>计算属性</title> </head> <style> table { border: 1px solid #000; text-align: center; width: 240px; } th,td { border: 1px solid #000; …...

uniapp中使用pageScrollTo让页面滚动到固定节点或距离

uniapp中使用pageScrollTo让页面滚动到固定节点或距离 思路&#xff1a;计算当前节点距离顶部的距离滚动距离然后使用pageScrollTo进行滚动&#xff08;要保证页面加载完成之后在执行&#xff09; #topic" id &#xff1a;页面的节点 changeTop(id) {let query uni.c…...

使用机器学习方法进行分析和处理:对高质量图像进行压缩

使用SVD&#xff08;奇异值分解&#xff09;进行图像压缩与普通压缩工具压缩的主要区别在于压缩原理和压缩效果。 压缩原理&#xff1a; 普通图像压缩工具通常采用有损压缩或无损压缩算法&#xff0c;如JPEG、PNG等&#xff0c;它们主要针对图像的像素进行变换和编码。而SVD图像…...

多线程面试总结

1. 创建线程有哪几种方式 创建线程有三种方式&#xff0c;分别是继承Thread类、实现Runnable接口、实现Callable接口。 通过继承Thread类来创建并启动线程的步骤如下&#xff1a; 定义Thread类的子类&#xff0c;并重写该类的run()方法&#xff0c;该run()方法将作为线程执行…...

android11-隐藏状态栏和导航栏

隐藏导航栏 /android11/frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml diff --git a/frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml b/frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml index ba6b6956f1..6db2348…...

血的教训--kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】

血的教训–kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】 最近下载了一个2023版本的kail系统&#xff0c;但是经过几次设置免密后&#xff0c;ssh过去一直让提供密码&#xff0c;所以就仔细的分析了一下&#xff0c;果然还是发现了点猫腻 接上一个博客&#xff0c;大…...

javaagent字节码增强浅尝

概述 javaagent 技术广泛应用于对代码的增强&#xff0c;比如统计方法执行时间、GC 信息打印、分布式链路跟踪等&#xff1b;实现方式包括 javassist 和 bytebuddy&#xff0c;bytebuddy 是对 javassist 的改进&#xff1b;类似于 spring 中的 AOP&#xff1b; Instrumentati…...

计算机组成原理-Cache替换算法

文章目录 总览随机算法&#xff08;RAND&#xff09;先进先出算法&#xff08;FIFO&#xff09;近期最少使用算法&#xff08;LRU&#xff09;最不经常使用算法&#xff08;LFU&#xff09;总结 总览 随机算法&#xff08;RAND&#xff09; 没有选择性地考虑替换哪一块Cache&a…...

Adobe 家族系列download

adobe 前言 Adobe公司的产品线中拥有多个家族桶&#xff0c;下面是Adobe全家桶产品的功能介绍&#xff1a; Creative Cloud&#xff08;创意云&#xff09;&#xff1a;包含Photoshop、Illustrator、InDesign、Premiere Pro、After Effects、Lightroom等创意设计、视频制作和…...

97.STL-查找算法 find

目录 STL-查找算法find 1.基本用法&#xff1a; 2.查找自定义类型&#xff1a; 3.查找范围&#xff1a; STL-查找算法find 在C的STL&#xff08;标准模板库&#xff09;中&#xff0c;find 算法用于在指定范围内查找指定值的元素。 功能描述&#xff1a; 查找指定元素&…...

如何应对雨天飞行的挑战?无人机机库防护能力解析

一、 背景介绍 无人机机库是无人机停放和起降场所&#xff0c;类似传统飞机的 hangar&#xff08;飞机库&#xff09;。它是一个专门用于存储、维护和保护无人机的设施。无人机机库的存在有助于提高无人机的安全性&#xff0c;同时也为无人机提供了一个有序的管理场所。 雨天…...

机器学习笔记 - 3D数据的常见表示方式

一、简述 从单一角度而自动合成3D数据是人类视觉和大脑的基本功能,这对计算机视觉算法来说是比较难的。但随着LiDAR、RGB-D 相机(RealSense、Kinect)和3D扫描仪等3D传感器的普及和价格的降低,3D 采集技术的最新进展取得了巨大飞跃。与广泛使用的 2D 数据不同,3D 数据具有丰…...

【Node.js】解决npm报错:RequestError: unable to verify the first certificate

1. 问题简述 帖主从nodejs官网下载安装nodejs后&#xff0c;发现使用以下命令安装electron会报错&#xff1a; npm install electron 报错信息如下&#xff1a; npm ERR! RequestError: unable to verify the first certificate 2. 解决方案 网上列举的方案&#xff0c;无…...

语言模型文本处理基石:Tokenizer简明概述

编者按&#xff1a;近年来&#xff0c;人工智能技术飞速发展&#xff0c;尤其是大型语言模型的问世&#xff0c;让 AI 写作、聊天等能力有了质的飞跃。如何更好地理解和利用这些生成式 AI&#xff0c;成为许多开发者和用户关心的问题。 今天&#xff0c;我们推出的这篇文章有助…...

淘宝商品详情数据接口(店铺搬家、数据分析、代购商城、ERP选品、无货源铺货、品牌监控)

使用淘宝API接口需要以下步骤&#xff1a; 注册开发者账号&#xff1a;在淘宝开放平台&#xff08;https://o0b.cn/anzexi&#xff09;上注册一个开发者账号&#xff0c;并创建一个应用。 获取API密钥&#xff1a;在应用页面上获取API密钥&#xff0c;这是后续调用API接口的凭…...

面试篇之微服务(一)

目录 概览 1.什么是微服务&#xff1f; 2.微服务带来了哪些挑战&#xff1f; 3.现在有哪些流行的微服务解决方案&#xff1f; 这三种方案有什么区别吗&#xff1f; 4.说下微服务有哪些组件&#xff1f; 注册中心 5.注册中心是用来干什么的&#xff1f; 6.SpringCloud可…...

智慧科研助力科研数据的分析处理

如今&#xff0c;科研领域的发展日新月异&#xff0c;数据量也越来越大。这时&#xff0c;智慧科研可视化技术不仅为科研人员提供了快速高效的数据分析手段&#xff0c;而且为科研工作的推进提供了新的思路和方法。通过可视化手段&#xff0c;我们可以将各种数据、信息、知识以…...

el-select实现分屏效果

动态绑定class值 &#xff0c;多种判断 :class"type 8 ? home-stye-2 : type 24 ? home-stye-1 : home-stye-3" <div class"home-right-top"><div class"home-right-top-video"><el-row :gutter"20"><el-c…...

Tk wasm 滑块算法分析

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向分析部分python代码cp execjs.co…...

Xamarin.Macios性能优化终极指南:10个让你的应用运行如飞的技巧

Xamarin.Macios性能优化终极指南&#xff1a;10个让你的应用运行如飞的技巧 【免费下载链接】xamarin-macios .NET for iOS, Mac Catalyst, macOS, and tvOS provide open-source bindings of the Apple SDKs for use with .NET managed languages such as C# 项目地址: http…...

解决Dlib库Windows环境部署难题:从编译失败到生产级应用的完整指南

解决Dlib库Windows环境部署难题&#xff1a;从编译失败到生产级应用的完整指南 【免费下载链接】Dlib_Windows_Python3.x Dlib compiled binaries (.whl) for Python 3.7-3.14 and Windows x64 项目地址: https://gitcode.com/gh_mirrors/dl/Dlib_Windows_Python3.x 在W…...

ai一键生成tomcat配置脚本,三分钟搞定java web服务器环境搭建

今天想和大家分享一个超级实用的技巧——如何用AI工具快速搞定Tomcat服务器的安装和配置。作为一个Java Web开发者&#xff0c;每次在新环境搭建Tomcat总免不了要折腾半天&#xff0c;直到发现了InsCode(快马)平台的AI生成功能&#xff0c;整个过程变得异常简单。 环境自动适配…...

3步实现微信聊天记录永久保存与智能分析的完整方案

3步实现微信聊天记录永久保存与智能分析的完整方案 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatMsg 在数…...

计算机三级嵌入式30天高效备考攻略——从零基础到通关秘籍

1. 零基础如何30天攻克计算机三级嵌入式&#xff1f; 第一次接触计算机三级嵌入式考试的同学&#xff0c;往往会被"嵌入式"三个字吓到。其实这个考试更像是"嵌入式系统知识入门认证"&#xff0c;完全不需要硬件开发经验。我当年也是零基础备考&#xff0c;…...

STM32F103C8T6 GPIO驱动LED保姆级教程(附完整代码)

STM32F103C8T6 GPIO驱动LED实战指南&#xff1a;从寄存器操作到HAL库封装 开篇&#xff1a;为什么选择STM32作为嵌入式开发入门 在众多微控制器中&#xff0c;STM32系列因其完善的生态和丰富的资源成为工程师的首选。特别是STM32F103C8T6这款被爱好者称为"蓝色药丸"的…...

亚马逊Alexa集成至NASA飞船的技术解析

将Alexa集成至某机构猎户座飞船背后的技术故事 从物理限制到声学挑战&#xff0c;了解与某机构和洛克希德马丁公司合作让Alexa在太空工作的技术实现。 作者&#xff1a;Arun Krishnan | 2022年11月16日 | 8分钟阅读 技术约束与挑战 在太空环境中设置语音设备远比在地球上复杂得…...

OmX企业解决方案:大型组织的AI编码助手部署全攻略

OmX企业解决方案&#xff1a;大型组织的AI编码助手部署全攻略 【免费下载链接】oh-my-codex OmX - Oh My codeX: Your codex is not alone. Add hooks, agent teams, HUDs, and so much more. 项目地址: https://gitcode.com/GitHub_Trending/oh/oh-my-codex OmX&#x…...

yuzu模拟器完整配置指南:从零开始打造完美Switch游戏体验

yuzu模拟器完整配置指南&#xff1a;从零开始打造完美Switch游戏体验 【免费下载链接】yuzu 任天堂 Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu yuzu是一款功能强大的开源任天堂Switch模拟器&#xff0c;让你在Windows、Linux和Android系统上…...