我正在使用 Hibernate 和 Spring 在 Apache Tomcat 6 上开发一个 Web 应用程序,我使用不同的 XML 配置文件来定义我的 Spring bean(比如 Hibernate DAO、Quartz 调度程序和其他一些东西)。所有这些文件都在 Tomcat 启动时通过 web.xml (ContextLoaderListener) 加载。
现在我不确定访问我的 bean 的推荐方法是什么。
我应该写在为所有应该使用 bean 的类提供 BeanFactory 的类上,还是在每个类中加载 BeanFactory 是更好的方法。
BeanFactory bf = (BeanFactory) ContextLoader.getCurrentWebApplicationContext();
最佳答案
spring框架的核心思想之一就是尽量减少类之间的依赖。通过在整个项目中使用此概念,您将获得最大的 yield 。每个后端对象都应定义为 bean,因此可以使用依赖注入(inject)自动化。
如果您的某些 Bean 需要直接访问 ApplicationContext(例如请求所有实现某些标记接口(interface)的 Beans),您可以实现 ApplicationContextAware 接口(interface),因此仍然不需要工厂。
关于spring - 在 Apache Tomcat webapp 中访问 Spring bean 的推荐方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3138164/