源:http://cuisuqiang.iteye.com/blog/1496589
评:
网上方法很多种,我说一些J2EE开发中会用到的方法。
第一种:
直接初始化Spring容器,获得对象
- ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
- applicationContext.getBean("beanId");
关于配置文件的读取也有好多种,我用到的是配置文件在SRC下面。
这样会初始化Spring容器,然后再得到配置的对象。
第二种:
通过环境来获得
- ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getSession().getServletContext());
- ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());
- ac1.getBean("beanId");
- ac2.getBean("beanId");
区别是前者会抛异常,而后者没有时返回NULL
第三种:
实现ApplicationContextAware接口
下面给出实现类,这也是我用的方法
- import org.springframework.beans.BeansException;
- import org.springframework.context.ApplicationContext;
- import org.springframework.context.ApplicationContextAware;
- /**
- * @说明 获得Spring配置中的某个对象
- * @author 崔素强
- * @see
- */
- public class SpringFactory implements ApplicationContextAware {
- private static ApplicationContext context;
- @SuppressWarnings("static-access")
- @Override
- public void setApplicationContext(ApplicationContext applicationContext)
- throws BeansException {
- this.context = applicationContext;
- }
- public static Object getObject(String id) {
- Object object = null;
- object = context.getBean(id);
- return object;
- }
- }
这是WEB开发中可以用到的集中方法,当然还有其他方法,欢迎大家积极提供!
更多内容请访问我的博客:http://cuisuqiang.iteye.com/ !
相关推荐
Bean是由Spring容器创建、初始化、装配以及管理的对象,它们在应用程序中扮演着重要的角色。本篇文章将深入探讨如何在Spring应用中获取Bean,以及相关的源码分析和实用工具。 首先,Spring容器(ApplicationContext...
- 对象注入:在需要Spring管理的类中,提供构造函数或setter方法,Spring会自动注入所需的依赖对象。 - 配置对象:在Spring配置文件中定义对象,包括其属性和依赖。 - 客户端代码:编写调用Spring管理对象的...
1. **依赖注入**:Spring通过容器管理Bean的生命周期,将依赖的对象注入到需要的地方,降低了组件间的耦合度。 2. **事务管理**:Spring提供了声明式事务管理,只需在配置文件中声明事务边界,即可自动处理事务的...
在Spring框架中,AOP(面向切面编程)被广泛用于事务管理,特别是与ORM(对象关系映射)框架如Hibernate结合使用时。本篇文章将深入探讨如何在Spring AOP中实现Hibernate事务管理,以及这一过程中的关键概念和技术...
在Spring中,依赖注入主要通过以下几种方式实现: 1. **构造器注入**:通过在类的构造函数中传递依赖对象的实例,Spring容器会在创建目标对象时调用合适的构造函数并注入依赖。 2. **setter注入**:在类中定义...
1. **Spring的Bean管理**:Spring通过XML配置或注解方式管理对象(Bean),可以将Web服务实现类作为Spring Bean,这样就能够在Spring容器中初始化、管理和销毁Web服务,确保了服务的生命周期控制。 2. **Autowiring...
Spring容器负责管理对象的生命周期和配置,这样开发者就不必关心对象的创建和销毁过程。 #### 2. Bean Bean是Spring框架中的核心概念之一,指的是被Spring IoC容器所管理的对象。Bean通常是由配置文件或注解定义的...
除了上述几种模式外,《Spring 5 设计模式》还介绍了更多实用的设计模式,包括但不限于: - **工厂模式(Factory)**:用于创建对象的接口,但让子类决定实例化哪个类。 - **装饰者模式(Decorator)**:动态地给一...
- **Spring Data MongoDB** 基于 **Spring Framework** 和 **MongoDB** 构建,主要由以下几个核心概念组成: - **Repository**: 提供了一种方式来定义和实现数据访问逻辑。 - **MongoTemplate**: 提供了用于执行 ...
Spring-core也包含对 Commons BeanUtils 和 Commons Lang 的依赖,这两者都是Apache软件基金会提供的实用工具库,提供了许多便利的Java对象操作功能。 4. **commons-logging.jar**:这是一个日志抽象层,允许Spring...
在使用场景方面,Spring Framework能够应用于多种不同的场景,包括企业级和非企业级应用。它支持依赖管理规范,有助于管理和解析项目中涉及的依赖关系。在Spring的依赖管理中,可通过Maven、Gradle、Ivy等构建工具来...
1. **核心容器**:这是Spring框架的基础,包括BeanFactory和ApplicationContext接口,它们负责管理对象的生命周期和依赖关系。BeanFactory提供基本的IoC(Inversion of Control,控制反转)功能,而...
Spring框架是Java开发中的核心组件,它为应用程序提供了一个轻量级的容器,用来管理对象的生命周期和依赖关系。本文将深入探讨标题"spring-zwz.zip"所提及的几个关键概念,包括第一个Spring程序、IOC(Inversion of ...
在Spring框架中,AOP被广泛应用,提供了一种声明式的方式来管理横切关注点。 本示例是一个基于Spring Boot实现的AOP切面演示项目。Spring Boot是Spring框架的一个简化版本,它内置了Tomcat服务器,自动配置了许多...
在Spring 3.1中,IoC容器得到了进一步的增强,具体体现在以下几点: 1. **配置元数据的多样化**:Spring 3.1支持多种配置元数据的格式,包括XML、注解和Java配置。这种多样性使得开发者可以根据项目需求选择最适合...
在Spring框架中,自定义标签是一项非常实用的功能,它允许我们创建符合XML语法的自定义元素,以便在配置文件中更方便地表达业务逻辑。在"spring自定义标签例子"这个项目中,我们可以深入理解这一特性,特别是通过...
为了支持简单的ORM功能,BaseDAO类内部需要实现几个关键的辅助方法,用于动态构建SQL语句和获取对象属性值。 - **getInsertsql()**:用于构建插入记录的SQL语句。 - **getUpdatesql()**:用于构建更新记录的SQL语句...
通过XML配置或注解方式,Spring可以管理对象之间的依赖关系。 3. **Aspect-Oriented Programming (AOP)**: AOP允许开发者定义“切面”,将横切关注点(如日志、事务管理)与业务逻辑分离。Spring AOP提供了基于代理...
总而言之,这个基于Spring的Java房屋租赁管理系统源码提供了一个完整且实用的示例,涵盖了Spring框架的核心应用,如依赖注入、事务管理,以及Web应用的典型结构。开发者可以通过学习和分析这个源码,提升自己在Java...