spring framework 第一章数据库管理(data access)
spring data access 的网址:https://docs.spring.io/spring/docs/current/spring-framework-reference/index.html
一:spring framework 框架的集成功能很多,主要有四大核心模块:
1.core模块:主要是bean管理,常用的依赖注入和AOP面向切面编程
2.data access: 数据库连接,支持多种数据库(oracle,mysql等)连接,也提供了大量的模板方法对数据的操作,也有强大的事务的管理机制。
3.web servlet: 将代码逻辑分层管理,目前使用的springmvc就是很优秀的分层控制的框架。
4.intergrate: 集成 了远程方法调用,JMS等
二:data access 细分为数据库连接,事务控制,对象关系模型解析映射
1.数据库连接jdbc: spring framework data access 将数据库操作动作分为两类:第一类spring框架的动作(重复并且非动态);第二类程序员的动作(动态数据);
什么叫重复并且非动态?spring data access 帮程序员做了哪些工作?
这是我自己定义的名称,在程序中当有大量重复的动作的时候,这就要考虑对重复动作的复用,体现到代码层定义工具类,重复使用工具。spring 在这里就会充当工具的作用。比如:数据库使用java 原始的jdbc 的连接会有如下步骤:创建数据库连接--->创建sql语句---->执行sql语句---->获取数据进行解析----->关闭数据库连接。 spring 作为工具会帮助我们做执行查询语句,数据解析等。程序员需要做的事情:就是何时打开数据库连接,创建什么样的sql语句。spring 这样做大大减少了我们重复代码的编写。下图是spring 和 you 的分工

x:表示你不需要做的工作
2.spring 的事务管理:全局事务和本地事务。全局事务可以跨多个数据源进行数据管理,本地事务只能保证一个数据源的事务管理。
3.spring事务的控制主要是传播策略和隔离级别,传播策略控制方法级别的事务,隔离级别控制数据重复读,脏读,虚读和幻读。
4.spring 设置超时回滚
5.设置只读:当被声明为只读的方法时,将不会更新数据库中的数据
6. spring 支持声明式回滚和硬编码回滚和注解方式回滚,但是只建议使用声明式回滚
7.支持多种数据源,通过注解的方式切换数据源
spring framework 第一章数据库管理(data access)的更多相关文章
- 《驾驭Core Data》 第一章 Core Data概述
<驾驭Core Data>系列教程综合了<Core Data for iOS>,<Learning Core Data for iOS>,<Core Data ...
- Spring实战第一章学习笔记
Spring实战第一章学习笔记 Java开发的简化 为了降低Java开发的复杂性,Spring采取了以下四种策略: 基于POJO的轻量级和最小侵入性编程: 通过依赖注入和面向接口实现松耦合: 基于切面 ...
- 一起来学Spring Cloud | 第一章 :如何搭建一个多模块的springcloud项目
在spring cloud系列章节中,本来已经写了几个章节了,但是自己看起来有些东西写得比较杂,所以重构了一下springcloud的章节内容,新写了本章节,先教大家在工作中如何搭建一个多模块的spr ...
- Django REST framework 第一章 Serialization
此章节将会介绍多种构成REST framework的重要模块,在每个部分如何一起配合上提供一个综合的全方面的了解. 准备 同样的创建一个新项目,创建一个新的app,将rest_framework跟新建 ...
- 一起来学spring Cloud | 第一章:spring Cloud 与Spring Boot
目前大家都在说微服务,其实微服务不是一个名字,是一个架构的概念,大家现在使用的基于RPC框架(dubbo.thrift等)架构其实也能算作一种微服务架构. 目前越来越多的公司开始使用微服务架构,所以在 ...
- Spring Framework简介
作者关于此主题早期文章 Spring框架快速入门 起源 要谈Spring的历史,就要先谈J2EE.J2EE应用程序的广泛实现是在1999年和2000年开始的,它的出现带来了诸如事务管理之类的核心中间层 ...
- 一起来学Spring Cloud | 第二章:服务注册和发现组件 (Eureka)
本篇文章,很浅显的一步步讲解如何搭建一个能运行的springcloud项目(带所有操作截图).相信!看完本篇之后,你会觉得springcloud搭建如此简单~~~~ 一. Eureka简介: 1.1 ...
- SpringBoot | 第一章:第一个SpringBoot应用
springboot简单介绍 概述 SpringBoot的核心功能 优缺点 优点 缺点 工程搭建 创建项目 项目结构 pom依赖 主入口 编写controller 启动应用 总结 老生常谈 sprin ...
- Spring.NET的中间数据层(Middle Tier Data Access)——事务管理(Transaction management)
简介 Spring.NET为事务管理提供了一个持久化抽象(consistent abstraction ),其优点如下: 为不同事务API,例如ADO.NET,Enterprise Services, ...
随机推荐
- [Tue, 11 Aug 2015 ~ Mon, 17 Aug 2015] Deep Learning in arxiv
Image Representations and New Domains inNeural Image Captioning we find that a state-of-theart neura ...
- PL/SQL Developer导入导出Oracle数据库方法
前一篇博客介绍了Navicat工具备份Oracle的方法.这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法. PL/SQL Developer是Oracle数据 ...
- FunsionCharts Demo
原文路径:http://www.cnblogs.com/xuhongfei/archive/2013/04/12/3016882.html 一.简介 Ø FusionCharts 是InfoSoft ...
- GET和POST 编码和乱码
1. 什么是URL编码. URL编码是一种浏览器用来打包表单输入的格式,浏览器从表单中获取所有的name和其对应的value,将他们以name/value编码方式作为URL的一部分或者分离的发送到服 ...
- String StringBuffer StringBuilder 对比
1.StringBuffer是线程安全的,StringBuilder是非线程安全的 2.对String的修改其实是new了一个StringBuilder并调用append方法,然后调用toSt ...
- Object Query Language (OQL) query 基本使用
OQL是对java堆内存进行查询分析 使用方法: 1.查看java线程id jps -lvm 上图红框中的为pid: 2.运行命令-导出堆内存信息-会生成一份文件在你本地 jmap -dump:liv ...
- O(n²)、O(n)、O(1)、O(nlogn)
大体上和 @丁戍 说的差不多. 简单说O(n²)表示当n很大的时候,复杂度约等于Cn²,C是某个常数,简单说就是当n足够大的时候,n的线性增长,复杂度将沿平方增长. O(n)也是差不多的意思,也就是说 ...
- YTU 2811: 打鱼还是晒网
2811: 打鱼还是晒网 时间限制: 1 Sec 内存限制: 128 MB 提交: 192 解决: 150 题目描述 中国有句俗话"三天打鱼,两天晒网".小王从2000年的1月 ...
- XML解析(DOM)
001 public class DOM_Parser { 002 003 public static void main(String[] args) { 004 try ...
- bzoj 3489 A simple rmq problem —— 主席树套线段树
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3489 题解:http://www.itdaan.com/blog/2017/11/24/9b ...