SpringBoot如何在普通类加载Spring容器
作者:经典鸡翅 发布时间:2023-10-06 03:56:27
标签:Spring,Boot,类,容器
前言
在我们的工作中,经常会遇到需要在普通类中使用放在Spring容器中的类的情况。最常见的情况大概就是有一个类他的属性的是通过spring的配置文件读取的。这样这个类必然要交给Spring容器进行管理。这个时候如果我们在普通类中直接new这个类是不可以拿到的。属性值不会加载成功。下面介绍一个方法。
实现
封装一个beanutil
我们获取spring容器中的类,都从这个工具类里面来获取。
import org.springframework.context.ConfigurableApplicationContext;
public class BeanUtil {
public static ConfigurableApplicationContext applicationContext;
public static <T> T getBean(Class<T> c){
return applicationContext.getBean(c);
}
}
在springboot启动类里面对beanutil的容器进行赋值
public class Application {
public static void main(String[] args) {
ConfigurableApplicationContext run = SpringApplication.run(InformationApplication.class, args);
BeanUtil.applicationContext = run;
}
}
使用示例
我们获取一个FileUploadUtil。
FileUploadUtil fileUploadUtil = BeanUtil.getBean(FileUploadUtil.class);
来源:https://www.cnblogs.com/jichi/p/12158424.html


猜你喜欢
- 1、下载内嵌浏览器Jar包下载地址:点击下载2、项目下加入对应jar;然后右键:Add as Library...3、添加启动项目后事件效果
- 我们日常的工作中都使用开发工具(IntelliJ IDEA 或 Eclipse 等)可以很方便的调试程序,或者是通过打包工具把项目打包成 j
- static void Main(string[] args) &nb
- 前言Redis是一个开源的Key-Value数据缓存,和Memcached类似。Redis多种类型的value,包括string(字符串)、
- 场景:使用intellij idea开发,持久层dao使用了mybatis,经常需要编辑mybatis的××Mapper.java和××Ma
- JDK、JRE、JVMJDK包含JRE,而JRE包含JVMJDK(Java Development Kit)是针对Java开发员的产品,是整
- 前言笔者上次用C#写.Net代码差不多还是10多年以前,由于当时Java已经颇具王者风范,Net几乎被打得溃不成军。因此当时笔者对于这个.N
- 实例如下:import java.util.ArrayList;import java.util.HashSet;import java.u
- 前言本文主要给大家介绍了关于spring mvc注解@ModelAttribute妙用的相关内容,分享出来供大家参考学习,下面话不多说了,来
- 首先:我们要建一个web项目接着: 我们先来导入struts的xml文件第一步:右击你的项目名,鼠标到MyEclipse会看到一个add s
- Spring Cloud Gateway 默认的filter功能和执行顺序有效性Spring Cloud Gateway 2.0.0.REL
- 第一步,导入jar包<!--Redis--> <dependency
- 1.Fragment概述在一个Activity中, Fragment代表UI的一个部分或者一个行为。一个Activity可以结合多个Frag
- DateTime dt = DateTime.Now;Label1.Text = dt.ToString();//2005-11-5 13:
- 本文实例为大家分享了Android项目实现视频播放器的具体代码,供大家参考,具体内容如下VideoView控件是播放视频用的,借助它可以完成
- 提到Java发送HTTP请求,大家首先想到的是用apache的HttpClient,或者squareup的OkHttp。而在Java11之前
- 目录一、服务的概念二、Android的多线程编程2.1 线程的基本用法2.2 在子线程中更新UI更新方式一更新方式二2.3 解析异步消息处理
- C++ 实现求最大公约数和最小公倍数最大公约数辗转相除法:int maxDivisor(int a, int b) { int
- 这篇文章主要介绍了java 读取系统Properties代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 目录1. 前言2. 方法1 使用SurfaceView3. 方法2 给拍照下来的图片添加水印第一步:获取拍照权限第二步:拍照调用相机进行拍照