Spring--案例:数据源对象管理
案例:数据源对象管理
对于已经学过数据库的我来说,这看起来就像是连接数据库的操作;
就像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--案例:数据源对象管理的更多相关文章
- spring+springmvc+mybatis+oracle+atomikos+jta实现多数据源事务管理
---恢复内容开始--- 在做项目过程中,遇到了需要一个项目中访问两个数据库的情况,发现使用常规的spring管理事务,导致事务不能正常回滚,因此,采用了jta+atomikos的分布式数据源方式 ...
- Spring IOC - 控制反转(依赖注入) - 入门案例 - 获取对象的方式 - 别名标签
1. IOC - 控制反转(依赖注入) 所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管理过程交 由Spring框架来处理,从此在开发过程中不再需要关注对象的创建和生命周 ...
- Spring中实现多数据源事务管理
文章转自 https://www.2cto.com/kf/201507/424229.html 前言 由于项目中引入了多个数据源,并且需要对多个数据源进行写操作,那么多数据源的事务管理自然成了不可避 ...
- Spring 多数据源 @Transactional 注解事务管理
在 Spring,MyBatis 下两个数据源,通过 @Transactional 注解 配置简单的事务管理 spring-mybatis.xml <!--******************* ...
- Spring IOC容器交给application域对象管理
在项目开发中,我们不能在每次使用IOC容器时,都创建一个ApplicationContext对象, 因此我们将IOC容器交给application域对象管理,application对象在服务器启动时创 ...
- Spring中的事务管理详解
在这里主要介绍Spring对事务管理的一些理论知识,实战方面参考上一篇博文: http://www.cnblogs.com/longshiyVip/p/5061547.html 1. 事务简介: 事务 ...
- XML方式实现Spring声明式事务管理
1.首先编写一个实体类 public class Dept { private int deptId; private String deptName; public int getDeptId() ...
- 框架应用:Spring framework (四) - 事务管理
事务控制 事务是什么?事务控制? 事务这个词最早是在数据库中进行应用,讲的用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位. 事务的管理是指一个事务的开启,内容添加, ...
- Struts2+Spring+Hibernate实现员工管理增删改查功能(一)之ssh框架整合
前言 转载请标明出处:http://www.cnblogs.com/smfx1314/p/7795837.html 本项目是我写的一个练习,目的是回顾ssh框架的整合以及使用.项目介绍: ...
- 深入理解Spring Boot数据源与连接池原理
Create by yster@foxmail.com 2018-8-2 一:开始 在使用Spring Boot数据源之前,我们一般会导入相关依赖.其中数据源核心依赖就是spring‐boot‐s ...
随机推荐
- JS篇(010)-JavaScript 继承的方式和优缺点
答案:六种方式 一.原型链继承 缺点: 引用类型的属性被所有实例共享 在创建 Child 的实例时,不能向 Parent 传参 二.借用构造函数(经典继承) 优点: 避免了引用类型的属性被所有实例共享 ...
- vue3使用swiper 完整步骤
注意: 使用之前请确定使用的swiper版本,避免走一些不必要的弯路(笔者踩过来的)本文采用的是vue3.0.swiper^8.1.0. 1.安装依赖 npm install swiper 2.vue ...
- vue3 微信支付和支付宝支付 H5和微信内置浏览器
vue3微信支付和支付宝支付 // 判断是否为微信内置浏览器 let browser: any = navigator.userAgent.toLowerCase(); let isWechat: a ...
- 摘抄笔记 centos内核优化
- js遍历出数组重复的数据,及重复的个数(简单有效)
const res={} ["s","s","a"].forEach((key)=>{ if(res[key]){ res[key]+ ...
- react对于setState的写法
react对于setState的写法,改变state的数组里边的值也可以这样写 [1,2,3,4,5].forEach((item)=>{ let arr={} arr[`list${item} ...
- XSS跨站脚本攻击(Cross Site Scripting)
XSS是跨站脚本攻击(Cross Site Scripting),不写为CSS是为了避免和层叠样式表(Cascading Style Sheets)的缩写混淆,所以将跨站脚本攻击写为XSS. 攻击者可 ...
- JDK1.8下载、安装和环境配置教程——
JDK1.8下载.安装和环境配置教程 1.下载安装包 - 浏览器搜索JDK8,如下图: - 点击网页打开后,下拉找到这个: - 根据自己的系统选择正确的进行下载: 例如我的是windows 64位,我 ...
- LoadRunner——block(块)技术
一般情况下,loadrunner中的事务是统一执行的,多个事务所执行的次数是相同的,对于不同的事务执行不同的次数就要用到block(块)技术 block(块)技术主要应用于在一个脚本中实现不同事务.不 ...
- 【Jenkins】jenkins 配置腾讯企业邮箱
首页]-->[系统管理]-->[系统设置] //////////////////////////////////////////////////////////////////////// ...