微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring IoC容器与Bean管理10:使用XML方式实现Spring IoC五:路径表达式用法;未完成,有问题未解决?????

说明:

(1)本篇博客内容是:路径表达式的内容包括【加载单个配置文件】、【加载多个配置文件】、【当前类路径是什么意思】、【路径表达式的几种写法】

路径表达式:加载单个配置文件

【当前类路径】是程序编译后的路径

路径表达式:使用数组、加载多个配置文件

类路径表达式的几种写法

(0)上面的config.xml就是指代applicationContext.xml;

(1)class:config.xml

 

(2)classpath:com/imooc/config

  

…………………………………………………… 

这儿还有疑问? 遇到未解决的问题???????????

…………………………………………………… 

(3)classpath*:com/imooc/config.xml

这个的意思是:去扫描【所有jar包】和【自己工程中,com.imooc包】中的名字是conifig.xml的文件

(4)classpath:config-*.xml

意思是:扫描classes根路径下,名字为config开头的xml文件

由此衍生的一个问题:前面在介绍<bean>的id和name属性时,介绍过遇到多个配置文件时,后加载创建的对象会覆盖掉之前创建的对象;那么按照这种通配符的写法,如果遇到多个config开头的xml文件时,先加载哪个嘞?:其是按照文件名ASCII码的顺序加载,比如有configa.xml和configb.xml;那么会先加载configa.xml;

从这个通配符的写法、可以加载多个配置文件的例子可知:我们配置文件的命名最好有一定规则;自然,在一般情况下,也要尽量保持所有配置文件中的<bean>的id或name都是唯一的;因为,只要<bean>的id或name都是唯一的,无论配置文件加载顺序如何,都不会出现对象覆盖的问题了;

(5)classpath:com/**/config.xml

意思是:扫描com包下,任何子包中的名为config.xml的文件

很少使用这种路径表达式,因为扫描范围太大了;在通常情况,会使用一个单独的目录来专门保存所有的配置文件

(6)file:c:/config.xml

意思是:扫描本地磁盘C盘下,名字为config.xml的文件

这种路径表达式很少使用;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。