案例:数据源对象管理

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

就像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. 064_Js常用的五大事件 onclick nochanger onload onsubmit onblur

    事件是电脑输入设备与页面交互的响应. onload加载完成事件:onload事件 是在页面被浏览器加载完成之后.自动触发的响应 onclick单击事件 onblur失去焦点事件 onchange内容发 ...

  2. windows 安装配置mysql 8,以及远程连接访问

    官网下载mysql8,https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-winx64.zip 1.解压zip包到安装目录 比如我的安 ...

  3. 脚本安装zabbix

    把zabbix.repo上传到 /etc/yum.repo.d/ 如果出现这种情况:yum -y remove httpdyum -y install httpdsystemctl start htt ...

  4. .netcore 以widnows服务方式运行

    应用需要 Microsoft.AspNetCore.Hosting.WindowsServices 的包引用. 生成主机时会调用 IHostBuilder.UseWindowsService. 若应用 ...

  5. jquery 判断字符串长度

    function titleLength(str) { var strLength = 0; var list = str.split(""); for (var i = 0; i ...

  6. 1903021126 申文骏 Java 第二周作业 代码编写及运行

    项目 内容 课程班级博客链接 19级信计班(本) 作业要求链接 Java第二周作业 博客名称 1903021126 申文骏 Java 第二周作业 代码编写及运行 要求 每道题要有题目,代码(使用插入代 ...

  7. Windows系统Redis集群搭建

    一.参考网址 https://mp.weixin.qq.com/s/ImdEJTdAmCFJsT55rici0Q 二.Redis版本 注意:搭建windows版的redis集群,redis的版本需要5 ...

  8. js 导出json文件

    var data={}//处理得到的json字符串 var filename = 'json.json'//json文件名 if(typeof data === 'object'){ ddd = JS ...

  9. vue搭建项目iview+axios+less

    项目地址:https://github.com/CinderellaStory/vue-iview-project vue搭建项目壳子已安装:iview.axios.less 已有界面:登录.左侧菜单 ...

  10. C++ PTA 小于m的最大的10个素数

    7-5 小于m的最大的10个素数 (15分) 给定一个整数m(50<m<20000),找出小于m的最大的10个素数. 输入格式: 输入在一行中给出一个正整数m(50<m<200 ...