Spring获取管理对象常用方法详解

 更新时间:2020年10月21日 11:56:29   作者:cuisuqiang  
这篇文章主要介绍了Spring获取管理对象常用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

网上方法很多种,我说一些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开发中可以用到的集中方法,当然还有其他方法,欢迎大家积极提供!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java static方法用法实战案例总结

    Java static方法用法实战案例总结

    这篇文章主要介绍了Java static方法用法,结合具体案例形式总结分析了java static方法功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-09-09
  • idea两侧的maven-project-structure图标不见了如何解决

    idea两侧的maven-project-structure图标不见了如何解决

    这篇文章主要介绍了如何解决idea两侧的maven-project-structure图标不见了问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Spring Boot创建可执行jar包的实例教程

    Spring Boot创建可执行jar包的实例教程

    这篇文章主要介绍了Spring Boot创建可执行jar包的实例教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • springboot连接kafka集群的使用示例

    springboot连接kafka集群的使用示例

    在项目中使用kafka的场景有很多,尤其是实时产生的数据流,本文主要介绍了springboot连接kafka集群的使用示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Java使用Callable和Future创建线程操作示例

    Java使用Callable和Future创建线程操作示例

    这篇文章主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作技巧与注意事项,需要的朋友可以参考下
    2019-09-09
  • Java中将UUID存储为Base64字符串的方法实现

    Java中将UUID存储为Base64字符串的方法实现

    使用Base64编码来对UUID存储在一些特定的场合被广泛的使用,本文主要介绍了Java中将UUID存储为Base64字符串的方法实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • SpringBoot项目打包成jar后获取classpath下文件失败的解决

    SpringBoot项目打包成jar后获取classpath下文件失败的解决

    这篇文章主要介绍了SpringBoot项目打包成jar后获取classpath下文件失败的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • IntelliJ IDEA cmd和idea Terminal查看java版本不一致的解决方案

    IntelliJ IDEA cmd和idea Terminal查看java版本不一致的解决

    原来win10电脑上安装的是jdk8的版本,因某些原因,现在想换成jdk7的版本,修改环境变量后,在cmd中执行 [java -version]命令,显示的是7的版本,遇到这样的问题如何解决呢?下面小编给大家分享IntelliJ IDEA cmd和idea Terminal查看java版本不一致的解决方案,一起看看吧
    2023-09-09
  • 在Spring中配置Quartz的三种方式

    在Spring中配置Quartz的三种方式

    Spring Quartz 是一个任务调度框架,它允许我们定期执行特定的任务,在 Spring 中,我们可以通过多种方式来配置 Quartz,包括使用 ​​@Scheduled​​ 注解、XML 配置和 Java 配置,本文将介绍如何在 Spring 中使用这三种方式来配置 Quartz,需要的朋友可以参考下
    2025-01-01
  • Sharding-Jdbc 自定义复合分片的实现(分库分表)

    Sharding-Jdbc 自定义复合分片的实现(分库分表)

    本文主要介绍了Sharding-Jdbc 自定义复合分片的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07

最新评论