<context:property-placeholder>配置资源文件

直接在 spring 配置文件里面加上

<context:property-placeholder file-encoding="UTF-8" location="classpath*:application.properties,classpath*:resource.properties,classpath*:memcached.properties,classpath:sys.properties" ignore-resource-not-found="true" />

这样就能在配置数据源的时候这样子

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <!-- Connection Info -->
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>

        <!-- Connection Pooling Info -->
        <property name="initialSize" value="${dbcp.initSize}" />
        <property name="maxIdle" value="${dbcp.maxIdle}"/>
        <property name="maxActive" value="${dbcp.maxActive}"/>
        <property name="defaultAutoCommit" value="false"/>
        <property name="timeBetweenEvictionRunsMillis" value="3600000"/>
        <property name="minEvictableIdleTimeMillis" value="3600000"/>
    </bean>

同时也可以在代码里面这样获取

@Value("${jdbc.driver}") String jdbcdriver;

当然如果用 @Value 注解获取属性的话,你的类也必须是spring注入管理的。 
如果用了SpringMVC,而且你在controller里面用 @Value 获取不到属性值的话,应该在SpringMVC配置文件里面也加上上面的配置!

因为在使用spring mvc时,实际上是两个spring容器: 
1,dispatcher-servlet.xml 是一个,我们的controller就在这里,所以这个里面也需要注入属性文件 
org.springframework.web.servlet.DispatcherServlet 
这里最终是使用

WebApplicationContext parent =WebApplicationContextUtils.getWebApplicationContext(getServletContext());

创建spring容器,代码在FrameworkServlet中

2,applicationContext.xml 是另外一个,也需要注入属性文件 
org.springframework.web.context.ContextLoaderListener

在我们的service中可以拿到@Value注入的值,那是因为我们通常都会把获取属性文件定义在applicationContext.xml中,这样在 Controller中是取不到的,必须在dispatcher-servlet.xml 中把获取属性文件再定义一下

具体看这里吧 http://blog.csdn.net/sunhuwh/article/details/15813103

时间: 2024-11-03 15:48:54

<context:property-placeholder>配置资源文件的相关文章

[CSharp]6 文件属性以及资源文件的使用

一.C#文件属性 1.什么是文件属性 文件属性可以用来指示项目系统对应文件执行的操作.具体的操作见下文.Visual Basic和Visual C#的文件都具有4个属性:“FileName".“BuildAcition”.“CustomTool”.”CustomToolNamespace“. 2.CopyToOutputDirectory属性 此属性指定将选定的源文件复制到输出目录所依据的条件.如果从不将文件复制到输出目录,请选择“不复制”:如果总是将文件复制到输出目录,请选择“始终复制”:如果

文件属性及资源文件的使用

一.C#文件属性 1.什么是文件属性 文件属性可以用来指示项目系统对应文件执行的操作.具体的操作见下文.Visual Basic和Visual C#的文件都具有4个属性:"FileName"."BuildAcition"."CustomTool"."CustomToolNamespace". 2.CopyToOutputDirectory属性 此属性指定将选定的源文件复制到输出目录所依据的条件.如果从不将文件复制到输出目录,请

java 资源文件的读取

Java将配置文件当作一种资源(resource)来处理,并且提供了两个类来读取这些资源,一个是Class类,另一个是ClassLoader类. gradle 项目 项目目录结构  用Class类加载资源文件 public InputStream getResourceAsStream(String name) 查找具有给定名称的资源.查找与给定类相关的资源的规则是通过定义类的 class loader 实现的.此方法委托此对象的类加载器.如果此对象通过引导类加载器加载,则此方法将委托给 Cla

C#中的文件属性以及资源文件的使用

 一.C#文件属性 1.什么是文件属性 文件属性可以用来指示项目系统对应文件执行的操作.具体的操作见下文.Visual Basic和Visual C#的文件都具有4个属性:"FileName"."BuildAcition"."CustomTool"."CustomToolNamespace". 2.CopyToOutputDirectory属性 此属性指定将选定的源文件复制到输出目录所依据的条件.如果从不将文件复制到输出目

maven打包额外的资源文件

在用Maven打包的时候发现,有一些资源文件打包不到jar包中,于是了解了一下Maven的打包配置,最后得到了解决问题的办法. Maven资源文件的默认约定 构建Maven项目的时候,如果没有进行特殊的配置,Maven会按照标准的目录结构,去查找和处理各种类型的文件,这就是Maven遵循的约定优于配置原则. Maven项目的标准目录结构 src — — main — — java 源文件 — — — — resources 资源文件 — — — — filters 资源过滤文件 — — — —

Spring多资源文件properties的配置

Spring简化了加载资源文件的配置,可以通过<context:property-placeholder去加载,这个元素的写法如下: <context:property-placeholder location="classpath:jdbc.properties"/> 如果想要配置多个properties文件 <context:property-placeholder location="classpath:jdbc.properties"

SpringMVC对静态资源文件的访问(配置)

<!-- 自动扫描的包名 -->     <context:component-scan base-package="com.app,com.core,JUnit4" ></context:component-scan>          <!-- 默认的注解映射的支持 -->     <mvc:annotation-driven />          <!-- 视图解释类 -->     <bean cl

spring配置国际化的消息资源文件(.properties)

<!-- 引入属性文件 --> <!--加载config.properties文件--> <context:property-placeholder location="classpath:config.properties" /> <!-- 国际化的消息资源文件 --> <bean id="messageSource"         class="org.springframework.contex

SpringBoot系列四:SpringBoot开发(改变环境属性、读取资源文件、Bean 配置、模版渲染、profile 配置)

1.概念 SpringBoot 开发深入 2.具体内容 在之前已经基本上了解了整个 SpringBoot 运行机制,但是也需要清楚的认识到以下的问题,在实际的项目开发之中,尤其是 Java 的 MVC 版项目里面,所有的项目都一定需要满足于如下几点要求: · 访问的端口不能够是 8080,应该使用默认的 80 端口: · 在项目之中为了方便进行数据的维护,建议建立一系列的*.properties 配置文件,例如:提示消息.跳转路径: · 所有的控制器现在都采用了 Rest 风格输出,但是正常来讲