Spring项目获取注入bean集合

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

private static ApplicationContext ctx;

public static void main(String[] args) {

try {

ctx = new ClassPathXmlApplicationContext(

new String[] { "classpath:spring/spring-context.xml", "classpath:spring/spring-mvc.xml" });

listAllSpringBeans();

} catch (Exception e) {

e.printStackTrace();

}

}

private static void listAllSpringBeans() {

String[] beanNames = ctx.getBeanDefinitionNames();

int allBeansCount = ctx.getBeanDefinitionCount();

System.out.println("所有beans的数量是:" + allBeansCount);

for (String beanName : beanNames) {

Class<?> beanType = ctx.getType(beanName);

Package beanPackage = beanType.getPackage();

Object bean = ctx.getBean(beanName);

System.out.println("BeanName:" + beanName);

/*System.out.println("Bean的类型:" + beanType);

System.out.println("Bean所在的包:" + beanPackage);

System.out.println("\r\n");*/

}

}

}

时间: 2024-11-23 03:28:05

Spring项目获取注入bean集合的相关文章

Spring简单属性注入和集合属性注入

属性注入是Spring中较为重要的一项功能.下面就讲讲简单属性注入和集合属性注入的具体操作. 步骤: ①首先不管是简单属性注入还是集合属性注入,都要使用到property标签 ②然后如果是简单属性注入的话直接给property标签的value值赋值即可,其中的value的类型我们可以不指定,框架会自        动识别,当然我们也可以指定,指定的形式如:java.lang.String (要写完成的类型).其也有两种方式: 第一种方式:<property name="类中属性名"

Spring学习笔记--注入Bean属性

这里通过一个MoonlightPoet类来演示了注入Bean属性property的效果. package com.moonlit.myspring; import java.util.List; import java.util.Map; import java.util.Map.Entry; import org.springframework.context.ApplicationContext; import org.springframework.context.support.Clas

spring boot 动态注入bean

方法一 SpringContextUtil public class SpringContextUtil { private static ApplicationContext applicationContext; //获取上下文 public static ApplicationContext getApplicationContext() { return applicationContext; } //设置上下文 public static void setApplicationCont

Spring注解自动注入Bean

我们知道采用Spring注解时,配置如下: [html] view plaincopy <context:annotation-config /> <context:component-scan base-package="cn.itkt"></context:component-scan> 这样的话,在com包及其所有子包下的所有类如果含有@Component.@Controller.@Service.@Repository等注解的话都会自动纳入到

解决Spring+Quartz不能注入Bean的问题

Spring application-quartz的配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http:

在main方法中初始化spring环境,注入bean

public static void main(String[] args) { LOGGER.info("==启动APP日志队列程序=="); SpringUtils.getBean(UserAppLogConsumerListener.class); } 一开始我是使用自定义的spring工具类的getBean方法进行初始化,但是存在问题:配置文件中用有引用UserAppLogConsumerListener这个bean,导致报错expected single matching b

Spring注解方式注入Bean 究竟应该选择哪种?

这篇文章写得很好,还有StackOverFlow上的 这个

Spring IOC之注入

1.概念 控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护 简而言之: 把本身可以创建对象的权利交给IOC容器,当要实例化该对象的时候,由IOC容器来实例化该对象(专注于使用IOC创建的对象) 2.目的 创建对象并且组装对象之间的关系 3.步骤 1.Bean容器初始化 (即IOC容器加载beans的xml配置文件)  (加载并初始化配置文件<beans></beans>) 1.两个基础包 1.org.springframework.beans 1.

在spring项目中,普通类注入获取Bean,实现ApplicationContextAware接口

在平时spring项目中,某个不能注入Bean的项目中要获取Bean. @Component public class SpringUtil implements ApplicationContextAware { private static ApplicationContext applicationContext = null; public SpringUtil() { } public void setApplicationContext(ApplicationContext arg0