当前位置: 首页 > news >正文

Spring中配置文件参数化

目录

一、什么是配置文件参数化

二、配置文件参数化的开发步骤


一、什么是配置文件参数化

配置文件参数化就是将Spring中经常需要修改的字符串信息,转移到一个更小的配置文件中。那么为什么要进行配置文件参数化呢?我们看一个代码

<bean id="connection" class="com.gl.demo.factory.ConnectionFactoryBean"><property name="driveClassName" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/test?useSSL=false"/><property name="username" value="root"/><property name="password" value="123456"/>
</bean>

 

这是之前配置数据库连接池的一个代码,虽然使用配置文件的方式已经很简洁了,但是如果我要频繁的修改呢?又或者是我这里的配置信息很多呢?这样就造成了代码的维护性变差,所以这就是为什么要将配置文件参数化的原因

二、配置文件参数化的开发步骤

1)首先,准备一个小的配置文件(.properties)用来存放需要转移的参数,这里就将需要注入的值转移到了小的配置文件中

2)在原来的Spring配置文件中添加context标签来引入配置文件的位置,这个标签是Spring专门用来引入小的配置文件的,其中这个location就是配置文件存放的位置

<context:property-placeholder location="classpath:/database.properties"/>

3)由于原来的配置文件中的value值已经没有了,这里只需要使用一个${}包裹小配置文件中的key值就可了

<context:property-placeholder location="classpath:/database.properties"/><bean id="conn" class="com.gl.demo.factory.ConnectionFactoryBean"><property name="driveClassName" value="${jdbc.driveName}"></property><property name="url" value="${jdbc.url}"></property><property name="username" value="${jdbc.username}"></property><property name="password" value="${jdbc.password}"></property>
</bean>

 

相关文章:

Spring中配置文件参数化

目录 一、什么是配置文件参数化 二、配置文件参数化的开发步骤 一、什么是配置文件参数化 配置文件参数化就是将Spring中经常需要修改的字符串信息&#xff0c;转移到一个更小的配置文件中。那么为什么要进行配置文件参数化呢&#xff1f;我们看一个代码 <bean id"co…...

linux minicom 调试串口

1、使用方法 1. 打开终端 2. 输入命令&#xff1a;minicom -D /dev/ttyS0 3. 按下回车键&#xff0c;进入minicom终端界面 4. 在终端界面中发送指令或数据&#xff0c;查看设备返回的数据 5. 按下CtrlA&#xff0c;松开释放&#xff0c;再按下X&#xff0c;退出minicom2、一些…...

#力扣:2651. 计算列车到站时间@FDDLC

2651. 计算列车到站时间 - 力扣&#xff08;LeetCode&#xff09; 一、Java class Solution {public int findDelayedArrivalTime(int arrivalTime, int delayedTime) {return (arrivalTimedelayedTime)%24;} }...

小县城蔬菜配送小程序制作全攻略

随着互联网的普及和人们对生活品质要求的提高&#xff0c;越来越多的小县城开始开发蔬菜配送小程序&#xff0c;以满足当地居民对新鲜蔬菜的需求。制作一个小县城蔬菜配送小程序&#xff0c;需要经过以下步骤&#xff1a; 步骤一&#xff1a;登录乔拓云平台 首先&#xff0c;打…...

JavaPTA练习题 7-4 计算给定两数之间的所有奇数之和

本题目要求接收输入的2个整数a和b&#xff0c;然后输出a~b之间的所有奇数之和。 输入格式: 分别用两行输入两个整数a,b 输出格式: 输出a~b之间的所有奇数之和 输入样例: 在这里给出一组输入。例如&#xff1a; 1 30输出样例: 在这里给出相应的输出。例如&#xff1a; …...

基于SSM的大学校医管理系统

基于SSM的大学校医管理系统、学校医院管理系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringSpringMVCMyBatisVue工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 登录系统 用户界面 管理员界面 摘要 大学校医管理系统…...

【递归、搜索与回溯算法】第一节.初识递归、搜索与回溯算法

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;递归、搜索与回溯算法 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;&am…...

第十二届蓝桥杯模拟赛第一期

A填空题 问题描述 如果整数a是整数b的整数倍&#xff0c;则称b是a的约数。 请问&#xff0c;有多少个正整数是2020的约数。 答案提交 这是一道结果填空的题&#xff0c;你只需要算出结果后提交即可。本题的结果为一个整数&#xff0c;在提交答案时只填写这个整数&#xff0…...

【生成对抗网络】

生成对抗网络&#xff08;Generative Adversarial Networks&#xff0c;简称GANs&#xff09;是深度学习领域的一种创新结构&#xff0c;由Ian Goodfellow在2014年首次提出。GANs包括两个深度神经网络——一个生成器和一个判别器&#xff0c;它们通常以对抗的方式进行训练。 以…...

Redis性能滑坡:哈希表碰撞的不速之客【redis第二部分】

Redis性能滑坡&#xff1a;哈希表碰撞的不速之客 前言第一部分&#xff1a;Redis哈希表简介第二部分&#xff1a;哈希表冲突原因第三部分&#xff1a;Redis哈希函数第四部分&#xff1a;哈希表冲突的性能影响第五部分&#xff1a;解决冲突策略第六部分&#xff1a;redis是如何解…...

科技与教育的盛宴——探讨监控易在82届教装展的新机遇

在第82届中国教育装备展示会这个融合了科技与教育的盛宴上&#xff0c;监控易将展现其最新的教育信息化解决方案和技术创新成果。这不仅是一次产品的展示&#xff0c;更是一次理念、技术与需求的交流和碰撞。在这里&#xff0c;我们将一同探讨在科技日新月异的今天&#xff0c;…...

Bazzite:专为 Steam Deck 和 PC 上的 Linux 游戏打造的发行版

导读对于一个专为 Linux 游戏定制的发行版&#xff0c;你是否感兴趣呢&#xff1f;如果答案是肯定的&#xff0c;那么我们为你准备了绝佳选择。 Bazzite 是一个新推出的基于 Fedora 的发行版&#xff0c;它是为 Linux 桌面上的游戏&#xff0c;以及越来越火热的 Steam Deck 定…...

【MySQL】数据库数据类型

文章目录 1. 整体概要2. 数值类型(有符号) tinyint 创建表(无符号) tinyint 创建表bit类型float 类型(无符号)floatdecimal 3. 二进制类型char类型varchar类型 4. 日期时间日期时间类型 5. string 类型enum类型和set类型enum类型和set类型的查找在枚举中的查找在set中的查找 1.…...

计算机组成原理 new07 真值和机器数 无符号整数 定点整数 定点小数 $\color{red}{Δ}$

文章目录 真值和机器数 无符号整数无符号整数的定义无符号整数的特征无符号整数的表示范围无符号整数的加法无符号数的减法 有符号整数(定点整数)有符号整数的定义原码原码的特点反码反码的特点补码补码的特点快速求解n位负数补码的方法为什么补码能够多表示一个范围(重点)变形…...

基于SSM的文化培训学校网站的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…...

gitee-git使用

克隆gitee某代码仓库某分支流程 1.克隆远程gitee仓库某分支到本地 2.如果克隆gitee仓库是私有的系统会弹出弹框让你输入gitee的账户和密码 3.克隆远程分支完成 git所需命令 克隆远程仓库到本地 git clone 仓库URLgit克隆远程分支到本地 git clone -b 分支名 仓库URLgit 拉…...

欧拉图(Euler Graph)

这种「一笔画」问题与欧拉图或者半欧拉图有着紧密的联系,下面给出定义: 通过图中所有边恰好一次且行遍所有顶点的通路称为 欧拉通路; 通过图中所有边恰好一次且行遍所有顶点的回路称为 欧拉回路; 具有欧拉回路的无向图称为 欧拉图; 具有欧拉通路但不具有欧拉回路的无向图…...

【安全体系架构】——零信任网络架构

什么是零信任网络架构&#xff1f; 零信任网络架构是一种网络和信息安全模型&#xff0c;它将传统的信任模型颠覆&#xff0c;不再信任内部或外部用户、设备或网络。相反&#xff0c;它将每个访问请求都视为不受信任&#xff0c;要求对每个用户、设备和流量都进行认证和授权&a…...

mybatis动态sql一对多查询

在数据库设计中&#xff0c;一对多关系是非常多的&#xff0c;例如消息通知和附件&#xff0c;一个消息通知中往往会包含多个附件&#xff0c;这种情况下使用mybatis动态sql可以很方便的查询出来。 1、数据库设计 消息表&#xff1a;sys_message CREATE TABLE sys_message (i…...

Leetcode.2316 统计无向图中无法互相到达点对数

题目链接 Leetcode.2316 统计无向图中无法互相到达点对数 rating : 1604 题目描述 给你一个整数 n n n &#xff0c;表示一张 无向图 中有 n n n 个节点&#xff0c;编号为 0 0 0 到 n − 1 n - 1 n−1 。同时给你一个二维整数数组 e d g e s edges edges &#xff0c;其…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 &#x1f37a; 最新版brew安装慢到怀疑人生&#xff1f;别怕&#xff0c;教你轻松起飞&#xff01; 最近Homebrew更新至最新版&#xff0c;每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

Oracle11g安装包

Oracle 11g安装包 适用于windows系统&#xff0c;64位 下载路径 oracle 11g 安装包...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG

TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码&#xff1a;HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...

Axure 下拉框联动

实现选省、选完省之后选对应省份下的市区...

rknn toolkit2搭建和推理

安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 &#xff0c;不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源&#xff08;最常用&#xff09; conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...