spring mvc-spri MVC配置文如何组织合理

问题描述

spri MVC配置文如何组织合理

springmvc项目中配置文件慢慢会变得很大,如何拆分并合理的组织?
看到有些项目是这么做的:

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:spring.xml,classpath:spring-mybatis.xml</param-value>
    </context-param>
 <servlet>
        <description>spring mvc servlet</description>
        <servlet-name>springMvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <description>spring mvc 配置文件</description>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring-mvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

的配置文件和classpath:spring-mvc.xml的各自作用是什么?

解决方案

 classpath:spring-mvc.xml:表示spring-mvc.xml文件在classes文件夹下
 其他那些文件都是基本的springmvc配置以及spring加载。
这些稍微找篇spring和springmvc的基础配置就都有说明。

文件

解决方案二:

自己来回答一下自己的问题吧,spring的ApplicationContext是一个上下文概念,mvc项目其实每一个Servlet都有一个对应的WebApplicationContext.其对应的上下文配置beas的文件是[servlet-name]-servlet.xml,当然可以设置路径。但是这里每个servlet的配置文件是相互隔离的,也就是说某个servlet的配置文件中的beans在另一个servlet是不可用的。
解决这个问题就是将通用共享的beans放到root applicationContext中,web的application context会自动继承root applicationContext的beans。
例如我们可以将数据库 ,mybatis,spring-security等配置文件分别写进一个xml文件,然后在web启动时就加载进来,如下所示:

   <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
                classpath:spring-base.xml
                    classpath:spring-mybatis.xml
                        classpath:spring-security.xml
                </param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
时间: 2024-09-17 08:17:22

spring mvc-spri MVC配置文如何组织合理的相关文章

MVC 创建虚拟目录文图

问题描述 MVC 创建虚拟目录文图 解决方案 提示已经很清楚了,看看iis中有没有已经映射过这个URL了.

spring.net +NHibernate +mvc 框架怎么搭建

问题描述 能帮我做一个最新的spring.net+NHibernate+mvc框架吗?sql2012,vs2013 解决方案

struts2中如何实现类似于spring mvc的mvc:resources静态资源管理

问题描述 需求是这样的:因为每次系统升级,修改了css丶js等静态资源,上线后,有的用户还是之前老的css或js,因为有缓存,需要强制刷新才能获取最新的.所以想对静态资源加上版本号,每次升级就将版本号+1想要的效果是这样的:页面中有请求/static/v1.0.1/images/index.png实际请求/static/images/index.png在springmvc中可以这样做:<mvc:resourcesmapping="${static.path}/v${static.versi

spring aop两种配置方式_java

第一种:注解配置AOP 注解配置AOP(使用 AspectJ 类库实现的),大致分为三步: 1. 使用注解@Aspect来定义一个切面,在切面中定义切入点(@Pointcut),通知类型(@Before, @AfterReturning,@After,@AfterThrowing,@Around). 2. 开发需要被拦截的类. 3. 将切面配置到xml中,当然,我们也可以使用自动扫描Bean的方式.这样的话,那就交由Spring AoP容器管理. 另外需要引用 aspectJ 的 jar 包:

Spring Cloud连载(3)Spring Boot简介与配置

本站小福利 点我获取阿里云优惠券 原文作者:杨大仙的程序空间 3 Spring Boot简介与配置   3.1 Spring Boot         Spring Cloud基于Spring Boot搭建,本小节将对Spring Boot作一个大致的讲解,读者知道Spring Boot作用即可. 3.1.1 Spring Boot简介         开发一个全新的项目,需要先进行开发环境的搭建,例如要确定技术框架以及版本,还要考虑各个框架之间的版本兼容问题,完成这些繁琐的工作后,还要对新项目

spring mvc-SpringMvc拦截器配置怎么配置拦截一个网站

问题描述 SpringMvc拦截器配置怎么配置拦截一个网站 我想拦截一个网址,比如页面的地址是www.XXXX.com.配置文件怎么配? 不拦截全部,只拦截单个网址的那种 解决方案 在controller层中来配置拦截的URL @RequestMapping("configSettRule") public class SettRuleController extends BaseController{ @Resource private SettRuleManager settRul

Spring中bean的配置

        IOC其实是从我们平常new一个对象的对立面来说的,我们平常使用的对象一般直接使用关键字类new一个对象,坏处很显然,使用new那么就表示当前模块已经不知不觉和new出的对象耦合了,而我们通常都是更高层次的抽象模块调用底层实现模块,这样就产生模块依赖于具体的实现,这与我们JAVA中提倡的面向接口面向抽象编程是相冲突的,而且这样做也带来系统的模块架构问题.很简单的例子,在进行数据库操作的时候,总是业务层调用DAO层,DAO一般采用接口开发,这在一定程度上满足了松耦合,使业务逻辑层不

了解Spring Boot的自动配置

Spring Boot的自动配置给开发者带来了很大的便利,当开发人员在pom文件中添加starter依赖后,maven或者gradle会自动下载很多jar包到classpath中.当Spring Boot检测到特定类的存在,就会针对这个应用做一定的配置,自动创建和织入需要的spring bean到程序上下文中. 在之前的文章中,我们只是在pom文件中增加各种starter的依赖,例如:spring-boot-starter-data-jpa, spring-boot-starter-web, s

struts2整合spring3后,指定spring管理action之后,配置的struts2的拦截器,拦截不到东西

问题描述 struts2整合spring3后,指定spring管理action之后,配置的struts2的拦截器,拦截不到东西 struts2整合spring3后,指定spring管理action之后,配置的struts2的拦截器,拦截不到东西,这是什么原因??? Struts2的Action可以交给Spring管理,但Struts2的拦截器就拦截到不到请求了,望高手帮忙! 解决方案 我也遇到同样的问题 不整合的时候struts什么都能拦,整合后就拦不了了