`

spring配置中classpath和classpath*的区别

阅读更多
在spring配置文件里,可以用classpath:前缀,来从classpath中加载资源

比如在src下有一个jdbc.properties的文件,可以用如下方法加载:
<bean id="propertyConfigurer"
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="locations">
			<list>
				<value>classpath:jdbc.properties</value>
			</list>
		</property>
	</bean>

对于打包在jar包中的资源,也可以用同样的方式:
<import resource="classpath:META-INF/cxf/cxf.xml" />


另外一种很像的方式,是使用classpath*:前缀,比如
<property name="mappingLocations">
			<list>
				<value>classpath*:/hibernate/*.hbm.xml</value>
			</list>
		</property>


classpath:与classpath*:的区别在于,前者只会从第一个classpath中加载,而后者会从所有的classpath中加载

如果要加载的资源,不在当前ClassLoader的路径里,那么用classpath:前缀是找不到的,这种情况下就需要使用classpath*:前缀

另一种情况下,在多个classpath中存在同名资源,都需要加载,那么用classpath:只会加载第一个,这种情况下也需要用classpath*:前缀

可想而知,用classpath*:需要遍历所有的classpath,所以加载速度是很慢的,因此,在规划的时候,应该尽可能规划好资源文件所在的路径,尽量避免使用classpath*
分享到:
评论

相关推荐

    浅析Spring配置中的classpath:与classpath*:的区别

    Spring 配置中的classpath:与classpath*:的区别 Spring 配置中的classpath:与classpath*:的区别是 Spring 框架中一个常见的问题。本文主要介绍了这两种路径的区别、使用场景及注意事项,以帮助读者更好地理解和使用...

    Spring中使用classpath加载配置文件浅析

    在Spring框架中,classpath加载配置文件是应用开发中常见的操作。Spring框架提供了灵活的方式来加载位于classpath中的XML配置文件,这对于项目的模块化和可维护性至关重要。本文将详细分析Spring通过classpath加载...

    Spring通过在classpath自动扫描方式把组件纳入spring容器中管理

    在Spring框架中,自动扫描(Auto-Component Discovery)是一种便捷的方式,它允许开发者无需显式配置每个bean,就能将类路径下(classpath)的特定包及其子包中的组件(即带有特定注解的类)纳入Spring容器进行管理...

    Spring2.5 自动扫描classpath

    描述中的链接指向了一个博客,虽然没有具体内容,但可以推测博主可能分享了关于如何在Spring 2.5中使用自动扫描classpath的具体实践和理解。 在标签中,“源码”意味着我们将讨论Spring框架内部的工作原理,尤其是...

    加载jar包中的spring配置文件

    综上所述,"加载jar包中的spring配置文件"是一个关键的Java开发实践,它涉及到Spring框架的配置管理、类路径的概念,以及如何在多模块项目中有效地组织和使用配置。正确理解和使用这些技术,能帮助开发者构建可扩展...

    spring-boot中文参考指南

    - **配置类**:如何定义和使用Spring Boot的配置类。 - **自动配置**: - **逐步替换自动配置**:逐步覆盖默认配置。 - **禁用特定的自动配置**:根据需要关闭某些自动配置功能。 - **Spring Beans和依赖注入**:...

    如何加载jar包中的spring配置文件

    在Spring MVC项目中,加载jar包中的Spring配置文件是一个常见的需求,特别是在进行SSM(Spring、Spring MVC、MyBatis)整合时。SSM框架的整合通常涉及到多个配置文件的组织和管理,其中一部分配置可能会被打包到独立...

    spring boot加载资源路径配置和classpath问题解决

    Spring Boot加载资源路径配置和Classpath问题解决 ...Spring Boot加载资源路径配置和Classpath问题解决是Java应用程序中的一个重要概念。理解Classpath的概念和工作原理对于解决资源加载问题和Classpath问题非常重要。

    Spring Boot参考指南.pdf

    - **在Spring环境中使用YAML暴露属性**:介绍如何在Spring环境中使用YAML配置文件。 - **Multi-profile YAML文档**:说明如何在同一份YAML文件中定义多份配置。 - **YAML缺点**:指出使用YAML作为配置文件格式的...

    十分钟上手spring boot

    #### 快速上手Spring Boot项目及配置 ##### Spring Boot简介 Spring Boot 是一款基于 Spring 架构的全新框架,它极大地简化了基于 Spring 的应用开发。Spring Boot 旨在提供快速应用开发所需的“一站式”解决方案...

    spring cloud 中文文档

    - **Spring Cloud Config服务器**:解释了如何设置和配置一个Config Server实例。 - **环境库**:讨论了如何配置不同的环境配置库,例如Git仓库。 - **健康指标**:解释了如何监控Config Server的健康状况。 - **...

    spring-boot中文参考手册

    - **在Spring环境中使用YAML暴露属性**:指导如何在Spring环境中访问YAML文件中的配置项。 - **Multi-profile YAML文档**:解释了如何在同一份YAML文件中定义多个profile配置。 - **YAML缺点**:指出了YAML文件的...

    spring-boot-reference-guide-zh

    ### Spring Boot 参考指南知识点概述 #### I. Spring Boot 文档概览 - **关于本文档** ...以上内容为Spring Boot参考指南中的一些关键知识点概述,旨在帮助读者快速掌握Spring Boot的核心概念和技术细节。

    Spring Cloud 中文文档.pdf

    Spring Cloud 是一个基于 Spring Boot 的微服务框架,它简化了分布式系统中的一些常见模式的开发,如配置管理、服务发现、断路器、智能路由、微批处理、一次性任务执行等。Spring Cloud 旨在为开发者提供快速构建...

    spring-boot中文手册

    - **导入XML配置**:解释了如何在Spring Boot项目中引入XML配置文件。 - **自动配置** - **逐步替换自动配置**:探讨了如何逐步替换Spring Boot提供的默认配置。 - **禁用特定的自动配置**:说明了如何关闭不需要...

    Spring从入门到精通

    - **为Eclipse配置Tomcat插件:** 通过Eclipse插件管理器完成安装和配置。 - **下载Spring:** 获取Spring框架的最新版本。 - **简单介绍Spring包:** 包括核心容器、数据访问/集成、Web模块等。 - **在Eclipse...

    Spring环境配置

    本文将详细介绍如何在Web应用中进行Spring的环境配置,并解释各个配置项的作用及意义。 #### 三、Spring环境配置的核心文件:web.xml `web.xml`是Web应用的部署描述符,用于配置Web应用的基本设置以及Spring框架...

    spring-boot-中文参考指南

    - **热交换**: 说明了如何启用和配置热交换功能。 #### 四、Spring Boot特性 ##### 4.1 SpringApplication - **自定义Banner**: 介绍了如何定制启动时显示的Banner。 - **自定义SpringApplication**: 说明了如何...

    Spring Cloud(Dalston )中文参考手册

    - **云原生应用程序**:这部分重点介绍了Spring Cloud如何支持云原生应用程序的构建,并提供了多种机制来管理和配置应用程序上下文。 - **应用程序上下文服务**:解释了如何通过Spring Cloud配置和管理应用程序上...

Global site tag (gtag.js) - Google Analytics