我是一个新手并经历了春季学习曲线,我有一个问题要了解我将使用基于代码的servlet容器初始化对web描述符文件中的xml初始化的情况。
我的问题的原因是,此时我想花时间学习大部分时间使用的内容,而不是为了灵活性而重载可能在框架中提供的许多概念。
有什么建议吗? 感谢您的阅读
答案 0 :(得分:1)
您希望使用基于Java的容器初始化的主要原因是您希望注册Spring托管的Servlet
,Filter
和XxxListener
对象。
例如,如果要注册ServletContextListener
,请指定
<listener>
com.your.listeners.MyListener
</listener>
部署描述符中的。容器获取完全限定的类名,并使用反射来查找它实例化以获取实例的相应Class
对象。换句话说,该对象由容器唯一地管理。你不能轻易地使用Spring注入字段。
另一方面,使用ServletContainerInitializer
或相应的Spring类,您可以在Spring上下文中指定Servlet
,Filter
或Listener
bean(或者通过XML或@Configuration
类)直接通过ServletContext
注册那些Spring管理的实例。
请注意,仍有一些配置需要使用部署描述符。