Spring 3中PropertySourcesPlaceholderConfigurer是很常用的了,比如常见的是
一个数据连接文件,比如jdbc.properties,这个大家相信都很熟悉了,比如:
<context:property-placeholder location='database.properties'/>
用法:
<bean id='dataSource' destroy-method='close'
class='org.apache.commons.dbcp.BasicDataSource'>
<property name='driverClassName' value='${jdbc.driverClassName}'/>
<property name='url' value='${jdbc.url}'/>
<property name='username' value='${jdbc.username}'/>
<property name='password' value='${jdbc.password}'/>
</bean>
如果是用bean注入,则为:
@Value('${jdbc.driverClassName}') private String driverClassName;
@Value('${jdbc.url}') private String dbUrl;
@Value('${jdbc.username}') private String dbUserName;
@Value('${jdbc.password}') private String dbPassword;
@Bean
public BasicDataSource dataSource() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName(driverClassName);
dataSource.setUrl(dbUrl);
dataSource.setUsername(dbUserName);
dataSource.setPassword(dbPassword);
return dataSource;
}
介绍下特别用法,比如要假设sa是默认的username的值的话,可以这样:
<property name='username' value='${jdbc.username:sa}'/>
就是用冒号隔开了
另外一个特性为嵌套解析,比如:
phase=qa
jdbc.username.qa=abc
jdbc.username.dev=def
则:
<property name='username' value='${jdbc.username.${phase}}'/>
看明白了么?其实就是,比如很常见的是生产环境和测试环境不同的
数据库,则当phase为qa的时候,spring配置文件中自动会去设置
jdbc.username.qa的值为abc,当phase设置为dev的时候,自动设置
jdbc.username.qa的值为def
分享到:
相关推荐
在实际开发中,Spring3还常常与Spring Boot结合使用,Spring Boot简化了Spring应用程序的初始化和配置过程,让开发者更专注于业务逻辑。 通过学习Spring3,你可以深入理解Spring框架的基础概念,这将有助于你掌握...
在描述中提到了一个博客链接,这通常会包含作者对Spring3和MyBatis3集成使用的实践经验、问题解决过程以及可能的优化方法。由于具体博客内容未提供,我们可以通过一般性的知识来探讨这个主题。 首先,Spring3集成...
Spring Security3是Spring框架中的一个模块,它提供了全面的安全服务,旨在为Web和非Web应用程序提供访问控制、认证、授权等功能。Spring Security3通过其强大的配置能力和丰富的特性,帮助开发者构建安全的应用程序...
### Spring 3 中文帮助文档知识点总结 #### 第一部分:Spring框架概述 ##### 第1章:Spring Framework介绍 - **1.1 依赖注入与控制反转** - 依赖注入(Dependency Injection, DI)和控制反转(Inversion of ...
《Spring3_权威开发指南》和《Spring3Security-3.0.1中文官方文档》是两本关于Spring框架的中文参考资料,对于深入理解和使用Spring 3.0有着极高的价值。Spring作为Java领域的核心框架之一,其强大的功能和灵活的...
Spring3支持构建RESTful Web服务,通过`spring3_rest`,你可以看到如何创建和配置REST控制器,使用HTTP方法(GET、POST、PUT、DELETE等)处理资源。这通常涉及使用`@RequestMapping`、`@ResponseBody`等注解。 5. ...
描述:Spring Boot中文文档是Spring Boot官方文档的中文翻译版,它包含了Spring Boot的基本介绍、快速入门、核心特性、高级特性等内容,可以帮助用户快速了解和掌握Spring Boot的使用方法和技巧。 Spring Boot是一款...
而"Maven3实战笔记(整合).pdf"则可以帮助开发者了解如何使用Maven这一强大的构建工具与Spring框架进行整合,实现自动化构建和依赖管理。 总的来说,Spring 5.0.0不仅在核心功能上进行了强化,还在反应式编程、Web...
在Spring3实例Demo中,你可能会看到如何配置和使用Spring的DAO(Data Access Object)支持,以及如何将这些DAO与Service层结合,形成一个完整的数据访问解决方案。 事务管理是企业级应用的重要组成部分。Spring3的...
《跟我学Spring3》是一本全面介绍Spring框架的教程,结合了代码实例和详尽的文档,旨在帮助读者深入理解并掌握Spring3的核心特性和使用方法。Spring是Java开发领域中广泛使用的轻量级框架,它以其依赖注入...
3. **Query Methods**:Spring Data JPA 支持通过方法名自动转换为 JPA 查询。例如,`findAll()` 会执行一个 SELECT ALL 查询,`findByLastname(String lastname)` 会根据指定的姓氏查找用户。此外,还可以使用注解 ...
Spring框架是Java应用程序开发中的一个核心组件,它提供了一个丰富的IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)功能,使得开发者能够更方便地管理对象和实现模块化...
通过本书,读者能够深入了解Spring框架的设计理念和使用方法,并且能够掌握如何在企业级应用开发中有效地应用Spring技术。 书中分为多个章节,每一章节都围绕着一个特定的主题进行讲解,具体知识点如下: 第1章:...
Struts2、Spring3和iBATIS是Java Web开发中常用的三大框架,它们各自负责不同的职责,协同工作可以构建出高效、松耦合的Web应用。在这个“struts2+spring3+ibatis项目整合案例”中,我们将深入探讨这三个框架如何...
视图技术章节介绍了Thymeleaf、FreeMarker、JSP & JSTL、Script模板和XML编组视图等多种模板引擎的使用方法。 远程服务和Web服务章节详细描述了使用Spring框架暴露和调用远程服务的技术,例如RMI、Hessian、HTTP...
本资源包含Spring Security 3的官方文档中文版、权限管理手册中文版以及相关的教程,对于学习和理解Spring Security 3的功能和用法非常有帮助。 首先,让我们深入了解一下Spring Security的核心概念: 1. **身份...
标题《spring3零配置注解实现Bean定义》中蕴含的知识点主要包括Spring框架中的Bean定义配置方法的演进,特别是从Spring 2.5到Spring 3版本的过渡过程中,对于注解方式实现Bean定义的支持如何被引入和优化。这种方法...
特殊Bean用法主要涉及Spring提供的多种高级特性,包括但不限于工厂方法、 prototype scope、AOP代理、SpEL表达式、条件注解等。下面将详细介绍这些特殊用法。 1. **工厂方法**: 在某些情况下,我们可能需要自定义...