分散配置
在应用上下文中,使用PropertyPlaceholderConfigurer从外部文件装载配置信息。其中location属性允许使用单个配置文件,可使用其locations属性设置配置文件列表。
案例:
Service包中ConnServiceImpl.java
public class ConnServiceImpl {
/*连接数据库**/
private String driverClass;
private String url;
private String user;
private String password;
public void setDriverClass(String driverClass) {
this.driverClass = driverClass;
}
public void setUrl(String url) {
this.url = url;
}
public void setUser(String user) {
this.user = user;
}
public void setPassword(String password) {
this.password = password;
}
}
Jdbc.properties文件
jdbc\:driverClass=com.mysql.jdbc.Driver
jdbc\:url=jdbc\:mysql\://localhost\:3306/db
jdbc\:user=dxl
jdbc\:password=root
applicationContext.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!-- 分散配置解析 引入一个外部文件即使用location属性
<bean id="propertyPlaceholderConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>cn/csdn/service/jdbc.properties</value>
</property>
</bean>
-->
<!-- 其中location属性允许使用单个配置文件,可使用其locations属性设置配置文件列表。classPath使用反斜杠
使用分散配置就可用占位符变量替代Bean配置文件中硬编码配置了,语法上,占位符变量采用${variable}形式
-->
<!-- 引入多个外部文件即使用locations属性 -->
<bean id="propertyPlaceholderConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<value>cn/csdn/service/jdbc.properties</value>
</property>
</bean>
<bean id="connServiceImpl" class="cn.csdn.service.ConnServiceImpl"
scope="singleton">
<property name="driverClass">
<!-- 在使用外部文件的名称方式${名称} -->
<value>${jdbc:driverClass}</value>
</property>
<property name="url">
<value>${jdbc:url}</value>
</property>
<property name="user">
<value>${jdbc:user}</value>
</property>
<property name="password">
<value>${jdbc:password}</value>
</property>
</bean>
<!-- 硬编码 的使用
<bean id="connServiceImpl" class="cn.csdn.service.ConnServiceImpl"
scope="singleton">
<property name="driverClass">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/db</value>
</property>
<property name="user">
<value>dxl</value>
</property>
<property name="password">
<value>root</value>
</property>
</bean>
-->
</beans>
此案例中主要介绍了分散配置的使用,首先介绍了硬编码的使用,然后是引入单个分散配置的使用,再就是引入多个分散配置的使用,并将三者做了具体的比较。读者主要观察xml文件中的代码,xml文件中的代码简单明了,易于理解。
分享到:
相关推荐
Spring Boot简化了Spring应用程序的初始设置和配置,它默认集成了许多常用的依赖,并提供了一种“即插即用”的开发体验。Paoding-Rose,全称Paoding Rose for Java,是源自百度的一款开源Java Web框架,主要特性包括...
6. **Spring Boot 2.x集成**:与Spring Boot 2.x的紧密集成,提供了更简洁的配置和更快的应用启动速度。 三、核心组件详解 1. **Spring Core**:提供DI和AOP的基础,是整个Spring框架的基石。DI使得对象之间的依赖...
Spring JavaConfig为Spring框架提供了一种全新的配置方式,它利用Java语言的强大功能来替代传统的XML配置文件。这不仅提高了代码的可读性和可维护性,还充分利用了Java的静态类型检查等优势,使得开发者能够更加专注...
这个版本的发布,不仅提供了最新的性能优化和修复,也体现了Spring社区对持续创新和提升开发者体验的承诺。包含的所有jar包是Spring框架运行和开发的基础,每个jar包都有其特定的职责,共同构建起强大的Spring生态...
然而,需要注意的是,尽管特效很酷,但过多的视觉和声音反馈可能会分散部分用户的注意力,因此,建议根据个人喜好和工作习惯适度调整插件的设置。 总的来说,"Activate Power Mode" 是 Atom 编辑器的一个独特插件,...
- **使用Log4J**:虽然不是首选,但Log4J仍然被广泛使用,并且可以在Spring应用程序中轻松配置。 #### 二、Spring框架4.x的新特性和增强 **3. 新特性与增强** **3.1 改善入门体验** Spring 4.x引入了更简单的...
此外,Spring Cloud Config提供了集中式的配置管理,允许开发者在不重启服务的情况下更新配置,这对于分布式系统来说是非常重要的。而Spring Cloud Gateway作为统一的API入口,可以实现路由转发、过滤器等功能,...
10. 构建配置管理数据库和文章分发引擎:这部分内容会教授如何使用Spring框架来构建支持自动化和可扩展性要求的后端系统。 11. 企业集成模式:这是一个专门讨论如何在企业级环境中集成不同系统和服务的高级主题。 ...
通过Spring Cloud可以实现服务的平滑扩容,确保用户体验。 - **金融行业**:安全性要求极高,任何一个小的故障都可能导致巨大的损失。Spring Cloud中的断路器、服务熔断等机制可以有效防止故障蔓延,保障业务连续性...
Spring Cloud是基于Java的微服务工具集,它为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线等)中快速构建一些常见模式的能力。 首先,让我们了解什么是路由网关。在微服务...
Spring Cloud是基于Spring Boot的一个框架集合,它为开发人员提供了快速构建分布式系统所需的工具,如服务发现、配置中心、断路器、智能路由、微代理等。使用Spring Cloud,我们可以轻松地创建一个可伸缩、高可用的...
2. **配置连接器**:配置与社交网络的连接器。 3. **创建连接**:利用连接器创建用户与社交网络之间的连接。 4. **读写操作**:通过Spring Social提供的API执行读写操作。 **下载和安装**Spring Social非常简单,...
Struts、Hibernate 和 ...同时,随着Java技术的发展,现在的许多新项目更倾向于使用Spring Boot和Spring MVC,它们提供了更加现代化的开发体验。然而,理解SSH框架的集成原理对理解现代Java开发仍然具有重要的意义。
客户端配置则包括Maven依赖的添加和Spring配置文件中相应的bean配置,确保单点登录功能在客户端得到正确执行。 #### 请求拦截器设置 通过配置`mvc:interceptors`,可以设置SSO登录验证拦截器,对所有请求进行拦截,...
### Tomcat安装与配置教程详解 #### 一、Tomcat基础安装步骤 1. **下载Tomcat** ... - 选择适合操作系统的版本,如`.zip`或`.tar.gz`格式。...正确配置能够显著提高Tomcat服务器的稳定性和响应速度,从而提升用户体验。
在Web应用中,异常处理通常是分散在各个控制器方法中的,这使得代码复用性差,且不易维护。统一异常处理就是将所有可能抛出的异常集中处理,提供一个全局的、一致的错误反馈,提高用户体验并简化代码结构。 1. **...
首先,SpringBoot是Spring生态中的重要组成部分,它简化了Spring应用程序的初始化和配置过程,使得开发人员可以快速地搭建项目。在本系统中,SpringBoot被用来构建各个微服务,每个服务都是独立运行的,能够提高系统...
SpringCloud是Java领域中用于构建微服务架构的主流框架,它提供了诸如服务发现、负载均衡、熔断机制、配置中心等关键功能。本篇将详细探讨微服务架构以及与SpringCloud相关的知识点。 微服务架构是一种将大型应用...
在微服务架构中,配置分散在各个服务中,管理起来非常不便。Nacos作为一个集中式的配置中心,可以存储、推送和管理所有服务的配置,使得配置变更能够实时、一致地更新到所有相关服务,极大地提高了运维效率。 该...