`

spring extral features-----StaticApplicationContext

阅读更多
@Test
	public void test(){
		//通过编程的方式去启动一个bean容器---该类通常用于测试,用于加载任意的外部资源,而不用加载特定格式的文件
		StaticApplicationContext  staticAppContext=new StaticApplicationContext();
		
		MutablePropertyValues pvs=new MutablePropertyValues();
		//在创建对象,需要指定实现类,不能是用抽象类或者接口,否则会出现错误
		staticAppContext.registerSingleton("userDao", UserDaoImpl.class);

		//创建为UserServiceImpl---可以通过
		pvs.add("userDao", staticAppContext.getBean(UserDao.class));
		//注册为单例模式 		并将属性键值对传入,value可以为引用类型
		staticAppContext.registerSingleton("userService", UserServiceImpl.class, pvs);
		
		staticAppContext.registerSingleton("userService2", UserServiceImpl2.class);
		
		
		UserService userService=staticAppContext.getBean("userService",UserService.class);
		userService.save("hot", "123456");
		
		ConfigurableListableBeanFactory factory=staticAppContext.getBeanFactory();
		
		Map<String, Object> beans=factory.getBeansWithAnnotation(Quality.class);
		Iterator<Object> iterator=beans.values().iterator();
		
		while(iterator.hasNext()){
			System.err.println(iterator.next().getClass());
		}
		
		staticAppContext.close();
		
		
	}

    我们可以通过上述的机制,来完成特殊的应用需求。例如,在web app启动的时候,从远程加载bean定义文件;动态创建bean;当然也可以通过别的机制完成特殊需求。各位根据自己的业务可以进行特殊定义

0
0
分享到:
评论

相关推荐

    Spring框架(spring-framework-5.2.6.RELEASE)的jar包

    - `spring-web-5.2.6.RELEASE.jar` 和 `spring-webmvc-5.2.6.RELEASE.jar`:Web相关的模块,分别对应基础Web支持和MVC框架。 每个jar包都封装了特定的功能,它们共同构成了Spring框架的强大生态系统,使得开发者...

    spring-cglib-repack-3.2.5.jar,spring-objenesis-repack-2.6.jar

    标题中的"spring-cglib-repack-3.2.5.jar"和"spring-objenesis-repack-2.6.jar"是Spring框架在运行时依赖的两个关键库,它们主要涉及到动态代理和对象创建的优化。 1. **CGLIB(Code Generation Library)**: ...

    Spring jar包 - spring-framework-4.3.3.RELEASE.jar

    Spring jar包 - spring-framework-4.3.3.RELEASE.jar 包括spring-core-4.3.3.RELEASE.jar spring-aop-4.3.3.RELEASE.jar spring-beans-4.3.3.RELEASE.jar spring-context-4.3.3.RELEASE.jar spring-web-4.3.3....

    spring导入eclipse时少的spring-cglib-repack-3.2.4.jar和spring-objenesis-repack-2.4.jar

    然而,有时候在导入Spring项目时,可能会遇到一些问题,例如标题中提到的"spring-cglib-repack-3.2.4.jar"和"spring-objenesis-repack-2.4.jar"这两个jar包的缺失。这些jar包对于Spring框架的正常运行至关重要,因为...

    spring-framework-master

    "spring-framework-master"这一压缩包包含了Spring框架的完整源码,为我们提供了深入理解这一强大工具的绝佳机会。 Spring的核心设计理念是依赖注入(Dependency Injection,简称DI),它通过反转控制(Inversion ...

    spring-framework-5.3.0-SNAPSHOT-dist.zip

    spring-framework-5.3.0-SNAPSHOT-dist, spring-aop, spring-aspects, spring-beans, spring-context, spring-context-indexer, spring-context-support, spring-core, spring-expression, spring-instrument, ...

    spring-context-3.2.0 spring-core-3.2.0 等齐全的Spring jar包

    这里提到的是一组完整的Spring库,包括`spring-core`、`spring-context`、`spring-webmvc`、`spring-web`、`spring-beans`、`spring-test`、`spring-jdbc`、`spring-orm`、`spring-aop`和`spring-tx`,它们都是3.2.0...

    spring-aop.jar各个版本

    spring-aop-1.1.1.jar spring-aop-1.2.6.jar spring-aop-1.2.9.jar spring-aop-2.0.2.jar spring-aop-2.0.6.jar spring-aop-2.0.7.jar spring-aop-2.0.8.jar spring-aop-2.0.jar spring-aop-2.5.1.jar spring-aop-...

    spring-cglib-repack-3.2.0.jar和spring-objenesis-2.2.jar

    标题 "spring-cglib-repack-3.2.0.jar" 和 "spring-objenesis-2.2.jar" 指的是两个在Spring框架源代码构建过程中常用的库。这两个库在Spring框架的运行和开发中起着至关重要的作用。 首先,让我们详细了解一下...

    spring-web-5.0.4.RELEASE.jar

    spring-web-5.0.4.RELEASE.jar; spring-web-5.0.4.RELEASE.jar

    spring-framework-4.1.6.RELEASE.rar

    spring-aop-4.1.6.RELEASE.jar spring-aspects-4.1.6.RELEASE.jar spring-beans-4.1.6.RELEASE.jar spring-context-4.1.6.RELEASE.jar spring-context-support-4.1.6.RELEASE.jar spring-core-4.1.6.RELEASE.jar ...

    spring-boot-security-saml, Spring Security saml与 Spring Boot的集成.zip

    spring-boot-security-saml, Spring Security saml与 Spring Boot的集成 spring-boot-security-saml这个项目在处理 spring-security-saml 和 Spring Boot 之间的平滑集成的同时,在处理内部的配置的gritty和锅炉板的...

    activiti-spring-boot-starter-basic-6.0.0适配springboot2.1.2

    activiti-spring-boot-starter-basic-6.0.0适配springboot2.1.2

    spring-beans-3.0.xsd

    《Spring框架中的beans配置文件详解——以spring-beans-3.0.xsd和3.1.xsd为例》 在Spring框架中,`spring-beans`是核心组件之一,它负责管理对象的生命周期和依赖关系。`spring-beans`的配置文件通常以`.xsd`为后缀...

    spring-session-redis/spring整合redis管理session依赖jar包

    commons-pool2-2.3.jar,jedis-2.8.0.jar,spring-data-redis-1.6.0.RELEASE.jar,spring-session-1.1.1.RELEASE.jar,Spring-data-redis(Version 1.6.0.RC1)中文版.pdf

    spring-data-commons-1.12.11.RELEASE.jar 下载

    spring-data-commons.jar spring-data-commons-core jar包下载 从 maven仓库中下载的官方jar包,放心使用

    spring 3.2.4.RELEASE jar包

    spring-context-3.2.4.RELEASE.jar spring-core-3.2.4.RELEASE.jar spring-beans-3.2.4.RELEASE.jar spring-test-3.2.4.RELEASE.jar spring-web-3.2.4.RELEASE.jar spring-aop-3.2.4.RELEASE.jar spring-webmvc-...

    spring-context-4.2.xsd.zip

    `spring-context-4.2.xsd`是Spring 4.2版本的Context模块的XSD文件,它包含了对Spring配置元素和属性的详细定义,使得开发者可以遵循标准编写XML配置,确保语法的正确性。 `spring-context-4.2.xsd`包含了一系列...

    mybatis-spring-boot-starter-2.0.0.jar

    mybatis mybatis-spring-boot-starter-2.0.0.jar下载

    spring-framework-1.0-with-dependencies.zip

    2. **spring-context**:扩展了spring-beans,引入了ApplicationContext接口,提供了一种更高级的容器,可以处理国际化、事件传播、资源加载等功能。 3. **spring-aop**:提供了AOP功能,包括定义切入点、通知、...

Global site tag (gtag.js) - Google Analytics