案例:数据源对象管理

对于已经学过数据库的我来说,这看起来就像是连接数据库的操作;

就像javaweb项目里面的db.properties文件的使用一样,我们需要先导入一个包,(我用的是Maven项目,javaweb的导包就不再细说了)

那么,在一个Maven项目里面,我们需要提前导入依赖,对于这个模块的实现的话,需要导入连接数据库的依赖坐标和druid的依赖坐标,如图所示:

依赖坐标导入完成之后,我们需要在ApplicationContext.xml文件里面写入代码

如上图所示,其中的class属性里面就是调用到了刚才导入的druid的依赖坐标

我们还需要在可运行的java文件里面执行一下:

结果显示如下:

又来了一个问题,在Spring里面,对代码的耦合度很看重,而在上面的代码中,其中部分代码都已经写死,耦合度达不到要求,我们还需要通过下面的代码进行修改

对于Spring来说,可以通过加载properties文件达到降低耦合度的目的

那么,我们就需要来新修建一个properties文件,并在ApplicationContext.xml文件里面引用到该properties文件

步骤1:开启context命名空间

来到ApplicationContext.xml文件界面:

滑动到最上方,找到如上图所示的语句,将其复制到:

并将其修改一下,如下图:

复制完成后,是这样的:

然后再将这两句复制到他们的下面:并将其中的beans都改成context

全部完成之后,是这样的:

至此,context空间就开启完成啦!(就是复制几条已经存在的语句,然后将里面的beans都改成context就行啦!)

步骤2:使用context命名空间加载properties文件

我们首先需要有一个properties文件:

里面的格式与之前学到的连接数据的db文件是一样滴!

然后就在.xml文件里面调用它:

跟前面对比下,感觉这几条语句瞬间活过来的感觉。

步骤3:调用到properties里面的内容

将里面已经确定好的数据值,修改成properties文件里面的属性名称

到这里,就能够实现加载properties文件啦!

验证一下

下面是对于该项操作的验证,有兴趣的小伙伴可以尝试一下哦!

BookDao的接口和实现类

ApplicationContext.xml文件

main.java

验证结果

Spring--案例:数据源对象管理的更多相关文章

  1. spring+springmvc+mybatis+oracle+atomikos+jta实现多数据源事务管理

    ---恢复内容开始---   在做项目过程中,遇到了需要一个项目中访问两个数据库的情况,发现使用常规的spring管理事务,导致事务不能正常回滚,因此,采用了jta+atomikos的分布式数据源方式 ...

  2. Spring IOC - 控制反转(依赖注入) - 入门案例 - 获取对象的方式 - 别名标签

    1. IOC - 控制反转(依赖注入) 所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管理过程交 由Spring框架来处理,从此在开发过程中不再需要关注对象的创建和生命周 ...

  3. Spring中实现多数据源事务管理

    文章转自  https://www.2cto.com/kf/201507/424229.html 前言 由于项目中引入了多个数据源,并且需要对多个数据源进行写操作,那么多数据源的事务管理自然成了不可避 ...

  4. Spring 多数据源 @Transactional 注解事务管理

    在 Spring,MyBatis 下两个数据源,通过 @Transactional 注解 配置简单的事务管理 spring-mybatis.xml <!--******************* ...

  5. Spring IOC容器交给application域对象管理

    在项目开发中,我们不能在每次使用IOC容器时,都创建一个ApplicationContext对象, 因此我们将IOC容器交给application域对象管理,application对象在服务器启动时创 ...

  6. Spring中的事务管理详解

    在这里主要介绍Spring对事务管理的一些理论知识,实战方面参考上一篇博文: http://www.cnblogs.com/longshiyVip/p/5061547.html 1. 事务简介: 事务 ...

  7. XML方式实现Spring声明式事务管理

    1.首先编写一个实体类 public class Dept { private int deptId; private String deptName; public int getDeptId() ...

  8. 框架应用:Spring framework (四) - 事务管理

    事务控制 事务是什么?事务控制? 事务这个词最早是在数据库中进行应用,讲的用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位. 事务的管理是指一个事务的开启,内容添加, ...

  9. Struts2+Spring+Hibernate实现员工管理增删改查功能(一)之ssh框架整合

    前言        转载请标明出处:http://www.cnblogs.com/smfx1314/p/7795837.html 本项目是我写的一个练习,目的是回顾ssh框架的整合以及使用.项目介绍: ...

  10. 深入理解Spring Boot数据源与连接池原理

    ​ Create by yster@foxmail.com 2018-8-2 一:开始 在使用Spring Boot数据源之前,我们一般会导入相关依赖.其中数据源核心依赖就是spring‐boot‐s ...

随机推荐

  1. 【BOOK】动态渲染页面爬取--Selenium库

    动态渲染页面爬取 JavaScript动态渲染 其中一种方式是Ajax请求,通过直接分析Ajax再用requests来实现数据爬取 另外一种方式是模拟浏览器运行 一. Selenium库 Seleni ...

  2. 大唐电信AC集中管理平台弱口令漏洞

    网络资产搜索: 找到平台 进行默认口令登入:admin/1***** 登陆 End!!!

  3. JLink OB SWI 取代串口打印的方式

    1:debug的串口被占用 2:从Keil 迁移到的LINUX下开发. 3:手上只有JLinkOB,(4线:CLK,SWIO,GND,RST) 4:设备只引出了4线(SWO 没接出) 环境: JLin ...

  4. vue后台管理系统——登录/退出功能

    电商后台管理系统的功能--登录/退出功能 1. 登录业务流程 ① 在登录页面输入用户名和密码 ② 调用后台接口进行验证 ③ 通过验证之后,根据后台的响应状态跳转到项目主页 2. 登录业务的相关技术点 ...

  5. Vue3父组件调用子组件内部的方法

    1. 子组件中定义方法并通过defineExpose暴露出去 import { reactive, defineExpose } from "vue"; const state = ...

  6. html-list

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. pwm 理解

    PWM:  假设PWM的时钟主频是 PWM_CLK_FREQ Hz,则如果需要输出频率为 xHz,占空比为 y% 的波形时, 则只需要在定时器的周期寄存器中写入(PWM_CLK_FREQ / x),在 ...

  8. [fiddler的使用]模拟自动回复功能在模拟测试mock第三方对接系统的返回中的使用场景

    [场景描述]在许多对第三方的测试过程中,由于第三方没有测试环境或者测试环境同步开发的时候还未准备好,或者系统间联调时对方还未完成的各种情况下,我们可以通过fiddler来模拟对方的返回. [操作步骤] ...

  9. 05 HDFS Java API应用实例

    一.在Ubuntu系统中安装和配置Eclipse 二.利用hadoop 的java api,向HDFS写一个文件. 三.从HDFS读取一个文件的内容.

  10. dubbo相关面试题

    1.说说Dubbo的分层? 从大的范围来说,dubbo分为三层,business业务逻辑层由我们自己来提供接口和实现还有一些配置信息,RPC层就是真正的RPC调用的核心层,封装整个RPC的调用过程.负 ...