Spring 从入门到精通 (九) 配置文件参数化

关键词:Spring | 配置文件 | 参数化

本专栏通过理论和实践相结合,系统学习框架核心思想及简单原理,原创不易,如果觉得文章对你有帮助,点赞收藏支持博主 ✨

在这里插入图片描述

一、概念

配置文件参数化是指把Spring配置文件中经常需要修改的字符串信息,单独提取转移到一个小配置文件中。

二、有经常修改的配置吗?

有啊,比如数据库相关的配置

三、为什么要转移?

有人又称Spring项目为 配置地狱 ,其实就是真实项目Spring配置可能会达到几千行甚至更多,此时去修改一些参数,比如数据库配置相关的,就非常不利于维护,因此,希望能把它单独抽取出来,放在一个单独的小配置文件中(properties),利于项目维护。

四、开发

开发思路

首先准备好要转移常用字符串的小配置文件,然后通过配置告诉spring咱使用了小配置文件,并指定是哪一个,通过一些特殊配置完成开发。

首先,准备一个小的配置文件(properties),名字没要求,位置没要求

driverClassName = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/zhou?useSSL=false
username = root
password = root

Spring中配置
<context:property-placeholder location="小配置文件位置"/>,这里注意使用了classpath,这里的这个是什么意思呢?就是指类路径,类路径又是哪呢,哈哈,这个问题问得好,这就要根据情况说了,在Maven项目中,根据Maven的目录和打包机制,会将Java目录和resources目录打包在同一目录下,这也就是所谓的classpath类路径,具体的可以看打包后的目录结构如下:

在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">

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

    <bean id="conn" class="factorybean.ConnectionFactoryBean">
        <property name="driverClassName" value="${driverClassName}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
    </bean>

</beans>

测试,尝试获取连接对象,如果成功获取,说明配置文件参数化成功,否则失败。

@Test
public void t7() {
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("newspring.xml");
    Connection conn = (Connection) context.getBean("conn");
    System.out.println(conn);
}

成功拿到,没有问题

com.mysql.jdbc.JDBC4Connection@19b2141

五、写在最后

座右铭:不要在乎别人如何看你,要在乎你自己如何看未来,看梦想,看世界…!

一起学习的可以私信博主或添加博主微信哦。

专栏:订阅专栏 ✅
关注:关注博主 🆙

  • 6
    点赞
  • 6
    收藏 更改收藏夹
  • 打赏
    打赏
  • 1
    评论
<p> <span style="color:#E53333;">内容简介:</span> </p> <p> Spring框架是一个开放源代码的<a target="_blank" href="https://baike.baidu.com/item/J2EE/110838">J</a>2EE应用程序框架Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于JEE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。 </p> <p> <span>本套课程为SSM框架组合学习中的Spring框架实战讲解,课程从Spring框架中的设计模式实践开始学习,分析模拟实现一个工厂容器,采用案例引导式讲解,对每个技术点都配合实战案例演示讲解。课程中对IOC和DI、AOP、动态代理实现原理、声明式事务管理机制、注解开发等进行了详细的讲解,覆盖了Spring中所有的精髓。</span>为后续学习Spring Boot打下基础。 </p> <p> <br /> </p> <p class="ql-long-39788408"> <span style="color:#E53333;">为什么需要学习这门课程?</span> </p> <div class="_3uBK1dPI_0 _18IFJWYN_0" style="margin:0px;padding:0px;"> <div class="_3CegnU7h_0" style="margin:0px;padding:0px;"> <p> 目前,Spring已经成为Java后端开发的行业标准,绝大多数的公司选择Spring作为基础的开发框架,在日常的工作中都会用到Spring。学会使用Spring,也成为了JAVA工程师必备要求。 </p> </div> </div> <p> <br /> </p> <p> <br /> </p> <p class="ql-long-39788408" style="font-family:"font-size:11pt;color:#494949;background-color:#FFFFFF;"> <span style="color:#E53333;">课程大纲:</span> </p> <p class="ql-long-39788408" style="font-family:"font-size:11pt;color:#494949;background-color:#FFFFFF;"> <span class="ql-author-39788408">为了让大家快速系统了解Spring知识全貌,我为您总结了思维导图,帮您梳理学习重点,建议收藏!<img src="https://img-bss.csdnimg.cn/202006240621286399.jpg" alt="" /></span> </p> <p> <br /> </p>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王子周棋洛

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值