什么是使用两个上下文正确的方式:dispatcher-servlet.xml
和applicationContext.xml
?哪里去了?
我想编写一个部署在servlet容器中的相当典型的应用程序。它具有一些带有JSP视图的控制器。在后端也有一些平凡的逻辑。我真的需要两个环境吗?它们如何相互关联?我该如何决定放入哪个?
另外,我想对我的应用程序使用Spring-security。我可能想在Web控制器以及更深层中使用其功能(例如带注释的声明式安全性)。在这种情况下,应如何配置安全性才能正常工作?应该在其中一个文件(哪个?)中还是在两个文件中?
该dispatcher-servlet.xml
文件包含你对的所有配置Spring MVC。因此,在它,你会发现豆类,如ViewHandlerResolvers
,ConverterFactories
,Interceptors
等等。所有这些bean都是Spring MVC框架的一部分,该框架构造了如何处理Web请求,并提供了有用的功能,例如数据绑定,视图解析和请求映射。
application-context.xml
在使用Spring MVC
或任何其他框架时,可以选择包含。这为你提供了一个可用于配置其他类型的Spring Bean的容器,这些类型的Spring Bean支持诸如数据持久性之类的事情。基本上,在此配置文件中,你可以获取Spring提供的所有其他功能。
这些配置文件在web.xml文件中配置,如下所示:
调度程序配置
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/spring/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
应用配置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/application-context.xml</param-value>
</context-param>
<!-- Creates the Spring Container shared by all Servlets and Filters -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
要配置控制器,请给它们加上注释,@Controller 然后在dispatcher-context.xml文件中添加以下内容:
<mvc:annotation-driven/>
<context:component-scan base-package="package.with.controllers.**" />
本文向大家介绍Spring Framework中applicationContext.xml和spring-servlet.xml之间的区别,包括了Spring Framework中applicationContext.xml和spring-servlet.xml之间的区别的使用技巧和注意事项,需要的朋友参考一下 Applicationcontext.xml-这是标准的Spring上下文文件,其中
问题内容: 和在中相关吗? 声明的属性文件是否可用于? 在相关说明中,为什么我根本不需要*-servlet.xml?为什么一个人不够? 问题答案: 使你可以在父子层次结构中定义多个上下文。 的用于“根web应用上下文”,即与该web应用程序相关联的上下文定义了豆。 该(或任何你称呼它)定义了一个servlet的应用程序上下文中的豆。一个Web应用程序中可以有许多这样的应用程序,每个Spring S
我有两个ruby on rails应用程序,分别位于两个不同的域上(例如和)
我试图使CORS与Spring Security很好地配合,但它并不符合要求。我进行了本文所述的更改,更改中的这一行使我的应用程序可以使用POST和GET请求(临时公开控制器方法,以便测试CORS): 前面: 后面: 不幸的是,允许通过AJAX进行Spring Security登录的以下URL没有响应:。我正在将AJAX请求从发送到。 当尝试访问时,我在Chrome中获得了选项预飞行请求,AJAX
我想在SpringMVC应用程序中保存一个用户对列表。任何用户都可以访问和更改列表(可以删除对,也可以添加新的对)。我不想将此列表保存为数据库中的一个表,因为我希望在web应用程序的执行过程中会形成许多对用户,并且应该经常执行此过程。我决定这个列表是一个单例Springbean(例如,名为ListHolder)的字段,它连接到不同的控制器。由于我是Spring的新手,我担心的是当很多用户同时使用该
我有使用令牌保护的服务,如下例所示:https://stackoverflow.com/A/10864088/278279 问题是当我添加文件上传时,筛选器找不到请求中的令牌(我认为原因是请求有多部分类型) 我正在使用CommonsMultipartResolver 和简单的spring控制器来接收文件 为了解决我修改的问题,如果请求具有多部分类型,则令牌检索: