SpringBoot项目获取ApplicationContext来GetBean的方法
一、简介
我们开发时,经常遇到有些实例需要动态创建,比如有构造函数的组件等。这时候,Spring时我们有ClassPathXmlApplicationContext,但是在Spring Boot时,我们怎么拿到ApplicationContext对像来调用它的GetBean方法呢?
二、方案
1、方案一:直接注入
@Component
public class MyClass { @Autowired
private ApplicationContext applicationContext;
}
2、方案二:利用SpringBootApplication的run方法返回的Context,存到项目静态变量中使用。
@SpringBootApplication
@EntityScan("com.dearcloud.domain.po")
@EnableJpaRepositories(basePackages = "com.dearcloud.repository")
@EnableDubbo
public class ApplicationServer {
public static void main(String[] args) {
//启动WEB项目
SpringApplication application = new SpringApplication(ApplicationServer.class);
ConfigurableApplicationContext context = application.run(args);
UserPoJpaRepository userPoJpaRepository = context.getBean(UserPoJpaRepository.class);
}
}
SpringBoot项目获取ApplicationContext来GetBean的方法的更多相关文章
- 在IDEA中将SpringBoot项目打包成jar包的方法
SpringBoot项目无需依赖tomcat容器(内含)就可以发布,现在将打包步骤记录一下: 1. 打包前确认项目可以正常运行,打开Project Structure 快捷键 Ctrl+Shift+A ...
- springboot项目启动多个实例的方法
我现在需要实现这样的功能:将一个服务提供者启动多个实例,下面我列出在eclipse中启动多个实例的方法: 首先看一下我的服务提供者的项目文件结构: springboot默认的配置文件是applicat ...
- spring项目获取ApplicationContext(能手动从Spring获取所需要的bean)
最流行的方法就是 实现ApplicationContextAware接口 @Component public class SpringContextUtil implements Applicati ...
- SpringBoot项目中如何异步执行一个方法
1. SpringBoot上加上开启异步方法注解:@EnableAsync 2. 在需要异步执行的方法上,加上异步方法注解 @Async 3. 测试 5. 测试结果为,访问127.0.0.1:8888 ...
- springboot项目获取resource下的文件
package com.expr.exceldemo; import org.springframework.core.io.ClassPathResource; public class Test ...
- 后端分页神器,mybatis pagehelper 在SSM与springboot项目中的使用
mybatis pagehelper想必大家都耳熟能详了,是java后端用于做分页查询时一款非常好用的分页插件,同时也被人们称为mybatis三剑客之一,下面 就给大家讲讲如何在SSM项目和sprin ...
- linux下后台启动springboot项目
linux下后台启动springboot项目 我们知道启动springboot的项目有三种方式: 运行主方法启动 使用命令 mvn spring-boot:run”在命令行启动该应用 运行“mvn p ...
- springboot:基础学习一 linux下后台启动springboot项目
我们知道启动springboot的项目有三种方式: 运行主方法启动 使用命令 mvn spring-boot:run”在命令行启动该应用 运行“mvn package”进行打包时,会打包成一个可以直接 ...
- 使用docker运行springboot项目
本文主要讲的是使用docker运行springboot项目 获取一个springboot项目 这里我没有重新构建,用的之前写的一个项目,直接从github上下载下来,地址:https://github ...
随机推荐
- springmvc 无法访问静态资源
没有配置<mvc:resources location="/" mapping="/**"/> <?xml version="1.0 ...
- HDFS常用API(2)
一.读取HDFS文件数据.将本地文件写入HDFS中文件.使用IOUtils读写数据 ** * @author: PrincessHug * @date: 2019/3/18, 17:24 * @Blo ...
- Flume的四个使用案例
一.Flume监听端口 1,在linux机器上下载telnet工具 yum search telnet yumm install telnet.x86_64 2.编写flume的配置文件,并将文件复制 ...
- Django报错:提交表单报错---RuntimeError: You called this URL via POST, but the URL doesn’t end in a slash and you have APPEND_SLASH set.
Django报错:提交表单报错---RuntimeError: You called this URL via POST, but the URL doesn’t end in a slash and ...
- node.js监听文件变化
前言 随着前端技术的飞速发展,前端开发也从原始的刀耕火种,向着工程化效率化的方向发展.在各种开发框架之外,打包编译等技术也是层出不穷,开发体验也是越来越好.例如HMR,让我们的更新可以即时可见,告别了 ...
- 大数据小白系列——HDFS(2)
这里是大数据小白系列,这是本系列的第二篇,介绍一下HDFS中SecondaryNameNode.单点失败(SPOF).以及高可用(HA)等概念. 上一篇我们说到了大数据.分布式存储,以及HDFS中的一 ...
- [mongoDB]PyMongo Cursor Not Found Error
Python跑一个aggregate脚本,报错:pymongo.errors.CursorNotFound: Cursor not found, cursor id: 35411720832 搜了下原 ...
- This 关键字的三个用处
---恢复内容开始--- 1.this调用本类中的属性,也就是类中的成员变量 2.this调用本类中的其他构造方法,调用时要放在构造方法的首行. 1.this调用本类中的属性,也就是类中的成员变量 1 ...
- LeetCode(169. 求众数)
问题描述 给定一个大小为 n 的数组,找到其中的众数.众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素. 你可以假设数组是非空的,并且给定的数组总是存在众数. 示例 1: 输入: [3,2,3] ...
- 让大疆去做测绘---航线规划软件APP
让大疆去做测绘---航线规划软件APP http://blog.zhulong.com/u10783270/blogdetail7162540.html RockyCapture无人机航线飞行控制软件 ...