Web.xml中自动扫描Spring的配置文件及resource时classpath*:与classpath:的区别
Web.xml中自动扫描Spring的配置文件及resource时classpath*:与classpath:的区别
一、Web.xml中自动扫描Spring的配置文件(applicationContext.xml)
1,首先在web.xml中配置监听器listener,让Spring进行自动获取。具体加入的代码如下:
<!-- 配置监听器listener,让Spring进行自动获取 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
2,只要启动服务这个配置就会默认的去加载我们的配置文件,自动的将里面的bean都给初始化了。
applicationContext.xml文件放在WEB-INF下,代码如下:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/applicationContext*.xml</param-value>
</context-param>
applicationContext.xml文件放在src下,代码如下:
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 加入配置文件放在了src下的,命名规则为:applicationContext.xml形式,则可以从以下方式配置-->
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
applicationContext.xml文件放在src/config下,代码如下:
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 加入配置文件放在了src下的,命名规则为:applicationContext.xml形式,则可以从以下方式配置-->
<param-value>classpath:config/applicationContext.xml</param-value>
</context-param>
3,服务器启动的时候就会自动的去classpa也就是src目录下找所有的以:applicationContext.xml文件并将它们初始化。
二、web.xml中classpath:和classpath*:的区别
1,classpath:只会到你的class路径中查找找文件;
2,classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.
三、注意事项
首先与Spring相关的配置文件必须要以"applicationContext-"开头,要符合约定优于配置的思想,这样在效率上和出错率上都要好很多。
最好把所有Spring配置文件都放在一个统一的目录下,如果项目大了还可以在该目录下分模块建目录;
在web.xml中的配置如下:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:**/applicationContext-*.xml</param-value>
</context-param>
<!-- "**/"表示的是任意目录
"**/applicationContext-*.xml"表示任意目录下的以"applicationContext-"开头的XML文件
-->
<!-- 你自己可以根据需要修改。最好把所有Spring配置文件都放在一个统一的目录下,如:-->
<!-- Spring 的配置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/spring/applicationContext-*.xml</param-value>
</context-param>
作者:整合侠
链接:http://www.cnblogs.com/lizm166/p/8301318.html
来源:博客园
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Web.xml中自动扫描Spring的配置文件及resource时classpath*:与classpath:的区别的更多相关文章
- web.xml中配置Spring中applicationContext.xml的方式
2011-11-08 16:29 web.xml中配置Spring中applicationContext.xml的方式 使用web.xml方式加载Spring时,获取Spring applicatio ...
- web.xml中配置spring.xml的三种方式
我们知道spring在web.xml中可以有三种方式来配置其xml路径:org.springframework.web.servlet.DispatcherServletorg.springframe ...
- web.xml中配置spring配置(application.xml)文件
application.xml 一般放到WEB-INF下,当然,你也可以将它放到任意问题,但需要web.xml指向到该文件 1.application.xml配置 <?xml version=& ...
- 0077 web.xml中配置Spring MVC时,Servlet-name上报Servlet should have a mapping的错误
这次是手工建立的web工程目录,在配置webapp/WEB-INF/web.xml的Spring MVC的DispatcherServlet时,在servlet-name上报错:Servlet sho ...
- 在web.xml中配置spring配置文件的路径
<context-param> <param-name>contextConfigLocation</param-name> <param-v ...
- 关于web.xml中配置Spring字符编码过滤器以解决中文乱码的问题
当出现中文乱码问题,Spring中可以利用CharacterEncodingFilter过滤器解决,如下代码所示: <!-- Spring字符编码过滤器:解决中文乱码问题 --> < ...
- 在web.xml中配置Spring的application.xml
<context-param> <!-- 请记住这里的名称不能够乱写,必须一模一样,区分大小写 java类去启动项目 contextClass--> <param-nam ...
- web.xml中classpath*:与classpath:的区别
classpath对应src目录,该目录下的文件会在编译后被存放到WEB-INF文件夹下的classes目录. classpath:只会到你的class路径中查找配置文件,对于多个同名的配置文件,只会 ...
- 如何在Web项目中配置Spring MVC
要使用Spring MVC需要在Web项目配置文件中web.xml中配置Spring MVC的前端控制器DispatchServlet <servlet> <servlet-name ...
随机推荐
- 如何访问局域网的Access数据库?
1]用共享打印机来打开文件共享, 2]把Access文件.mdb所在的文件夹 共享,然后其他的就和本地一样了. 设置如下: Data Source="\\192.168.7.49\user\ ...
- centos6.6-6.8的cobbler的kickstarts文件
author:headsen chendate: 2018-07-10 19:14:39 1,普通的mbr版的kickstarts的配置文件: [root@cobbler-server ~]# cat ...
- 【BZOJ2982】combination Lucas定理
[BZOJ2982]combination Description LMZ有n个不同的基友,他每天晚上要选m个进行[河蟹],而且要求每天晚上的选择都不一样.那么LMZ能够持续多少个这样的夜晚呢?当然, ...
- 【BZOJ1706】[usaco2007 Nov]relays 奶牛接力跑 矩阵乘法
[BZOJ1706][usaco2007 Nov]relays 奶牛接力跑 Description FJ的N(2 <= N <= 1,000,000)头奶牛选择了接力跑作为她们的日常锻炼项 ...
- freenas 11.2踩过的坑
修改SMB最小协议 服务器最小协议由FreeNAS上的sysctl控制. 在System-> Tunables 下添加sysctl来使其永久化:Variable = freenas.servic ...
- git学习(7)标签管理
git学习(7)标签管理 1. 建立标签 在发布版本时候,我们通常会在版本库中打一个标签,这样就唯一确定了打标签的版本,有点像个里程碑,这里会有一个指向某个commit的指针 打标签很简单,首先切换到 ...
- (转载)移动Web开发技巧汇总
META相关 1. 添加到主屏后的标题(IOS) <meta name="apple-mobile-web-app-title" content="标题" ...
- cpython解释器内存机制
java虚拟机内存 笼统分为两部分:堆区,栈区 其中,引用在栈区,对象在堆区 详细分为五部分:堆区,虚拟机栈区,本地方法栈区,方法区,程序计数器 cpython解释器内存 笼统分为两部分:堆区,栈区 ...
- 如何缩减手游app安装包的大小?
包体过大对手游的影响更是诟病已久,有具体数据证明,游戏包体越大,在游戏运营推广过程中游戏用户的转化率就越低:反之,游戏包体越小,游戏用户的下载转化率就越高(如下图),所有的手机app.游戏在大版本更新 ...
- ssm框架集成Quartz定时器
第一步:添加依赖 <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>qu ...