我在Tomcat中托管了一个3层应用程序;网络,服务和DAO层。
如何整合Tomcat和Spring?我需要使用Spring的依赖注入,事务管理等。
我只能想到实例化一个ClassPathXmlApplicationContext,但这样,ApplicationContext单例实例在各层之间是不可见的。
答案 0 :(得分:20)
如果您要创建Web应用程序,则不要使用ClassPathXmlApplicationContext
。而不是你使用web容器的功能。
您可以在web.xml
中定义应用程序上下文。
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
有关详细信息,请查看文档Convenient ApplicationContext instantiation for web applications。
如果bean需要应用程序上下文的实例,请使用ApplicationContextAware
interface。