博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Action以外的类中来获得Spring所管理的Service对象
阅读量:6954 次
发布时间:2019-06-27

本文共 1156 字,大约阅读时间需要 3 分钟。

hot3.png

在SSH集成的前提下。某些情况我们需要在Action以外的类中来获得Spring所管理的Service对象。

  之前我在网上找了好几好久都没有找到合适的方法。例如:

  ApplicationContext context = new ClassPathXmlApplicationContext();

  当时我觉得没有这个必要,浪费内存。后来我终于想出了一个解决方法。在此拿来给大家参考下,希望对大家有帮助。

  1.创建一个类并让其实现org.springframework.context.ApplicationContextAware接口来让Spring在启动的时候为我们注入ApplicationContext对象.

  示例代码:

 

以下是代码片段:
 import org.springframework.beans.BeansException;
  import org.springframework.context.ApplicationContext;
  import org.springframework.context.ApplicationContextAware;
  public class MyApplicationContextUtil implements ApplicationContextAware {
  private static ApplicationContext context;
  //声明一个静态变量保存
  public void setApplicationContext(ApplicationContext contex) throws BeansException {
  this.context=contex;
  }
  public static ApplicationContext getContext(){
  return context;
  }
  }

 

  2.在applicationContext.xml文件中配置此bean,以便让Spring启动时自动为我们注入ApplicationContext对象.

  例:

 

  <!-- 这个bean主要是为了得到ApplicationContext 所以它不需要其它属性-->
  <bean class="org.ing.springutil.MyApplicationContextUtil"></bean>

 

  3.有了这个ApplicationContext之后我们就可以调用其getBean("beanName")方法来得到由Spring 管理所有对象.

转载于:https://my.oschina.net/sniperLi/blog/775473

你可能感兴趣的文章
我的友情链接
查看>>
系统监控工具汇总
查看>>
win7 系统保留分区 BCDedit
查看>>
rsync 实时同步
查看>>
集群简单概述
查看>>
Windows 2012初探之一:分区管理
查看>>
python之文件的基本操作
查看>>
【2013-6-28】零售快消行业最佳实践交流会
查看>>
Nfs 网络文件系统
查看>>
debian或ubuntu修改时区
查看>>
mysql升级:rpm包安装升级
查看>>
SQL Server 2005 XML 操作总结(二)示例
查看>>
测试代码是否按代码风格显示
查看>>
Zabbix 3.4.3 使用SNMP监控H3C交换机端口流量
查看>>
三大家族轻松管理CentOS 7网络属性配置
查看>>
Zabbix汇总分组流量
查看>>
Kali***(二)之被动信息收集——DNS字典爆破
查看>>
MySQL 存储过程
查看>>
UIGestureRecognizer手势
查看>>
Centos6 系列根分区--简单、快速、扩容案例
查看>>