- 浏览: 1590924 次
- 性别:
- 来自: 吉林
文章分类
- 全部博客 (624)
- C/C++ (33)
- Java (181)
- 网络相关 (7)
- 我爱篮球 (3)
- 也爱足球 (4)
- 杂谈 (1)
- 系统架构 (3)
- Web Service (14)
- Framework (3)
- 系统命令 (8)
- 管理平台相关 (8)
- 其它 (35)
- Websphere (1)
- Struts2 (24)
- Hibernate (16)
- Spring (23)
- javascript (20)
- jquery (23)
- html/css/div (28)
- 数据库 (40)
- JavaWeb (27)
- 设计模式 (2)
- 文档编写 (3)
- SVN (5)
- Ant (1)
- Maven (13)
- 软件项目管理 (8)
- AOP (1)
- kindeditor (1)
- JSON (2)
- Servlt/JSP (4)
- WordXML (2)
- XML (12)
- 面试相关 (7)
- Tomcat (11)
- 性能与调优 (29)
- 职业发展 (2)
- 操作系统 (7)
- AJAX (2)
- DWR (1)
- Eclipse (12)
- 持续集成 (3)
- 批处理命令 (1)
- Mozilla Rhino (2)
- 新鲜技术 (18)
- Apache mina (2)
- 底层技术 (18)
- Linux (22)
- 新鲜技术,IT历史 (1)
- 敏捷开发 (1)
- 版本控制 (5)
- 较火技术 (7)
- 集群 (2)
- Web前端 (13)
- 报表工具 (3)
- 网站架构 (5)
- 大数据 (8)
- 分布式存储 (5)
- 云计算 (8)
- TCP/IP协议 (1)
- 负载均衡 (3)
- 硬件 (1)
- 表现层技术 (3)
- Velocity (3)
- jvm (6)
- 并发编程 (10)
- hadoop (8)
- 数据结构和算法 (12)
- 计算机原理 (1)
- 测试驱动开发-TDD (3)
- 开发技巧 (1)
- 分词器 (1)
- 项目构建工具 (2)
- JMX (4)
- RMI (1)
- 测试技术 (22)
- 网络完全 (1)
- Git (4)
- apache开源包 (4)
- Java常用 (1)
- mock (2)
- OSGi (2)
- MongoDB (1)
- JBPM (1)
- Storm (3)
- mysql (2)
- telnet (1)
- 正则表达式 (1)
- bootstrap (4)
- Apache ActiveMQ (1)
- redis (9)
- Nginx (2)
- rsync+inotify文件同步 (2)
- testng (1)
- 原型设计工具 (1)
- 工程能力 (1)
- 风险控制 (3)
- ibatis (1)
- 分布式 (4)
- 安全技术 (1)
- 计算机基础 (4)
- 消息中间件 (1)
- UML (2)
最新评论
-
u012236967:
java命令执行jar包(里面的main函数)的方式(包括依赖其它的jar包问题) -
世界尽头没有你:
Selenium自动化测试从入门到精通(Java版)百度网盘地 ...
自动化测试工具 Selenium WebDriver 入门教程(针对主流浏览器) -
小小西芹菜:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
dwr实现Reverse Ajax推送技术的三种方式 -
hellozhouqiao:
楼主,请教一点问题.现在我们需要在excel 的页脚里面加上图 ...
FreeMaker + xml 导出word(处理目录,图片和页眉页脚问题) -
乱在长安:
使用Timer会有各种各样的问题好嘛?!书上推荐使用Sched ...
DelayQueue (ScheduledThreadPoolExecutor调度的实现)
事务:由一个或多个执行、完成的语句组成,以组的形式提交或回滚。当前事务结束,另一个事务开始。 在JDBC中,事务默认是自动提交的,即每执行一条语句,就是一个事务。 事务特性:ACID特征,Atomic(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)。 事务各个特征的实现手段: 事务隔离级别(5级): Oracle支持2种:2和8,默认为2. 并发环境中的几种情况: 使用如下方法控制连接的独立性等级: conn.setTransactionIsolation(Connection.TRANSACTION_XXX); 事务的开始与结束: 首先,因为默认的JDBC事务是自动提交的,故我们在获取数据库连接后,应该将连接改为非自动提交模式: conn.setAutoCommit(false); //标志着新事务的开始 conn.commit(); //提交 conn.rollback(); //回滚 在JDBC 3.0新增功能中,提供对事务commit和rollback的更好支持,在事务过程中,在两个操作间可以插入一个命名的存储点作为标记,因此可以将事务回滚到那个标记,保留标记有效前的所有操作。 示例: conn.setAutoCommit(false); Statement stmt = conn.createStatement(); stmt.executeUpdate(update1); Savepoint point1 = conn.setSavepoint("point1"); stmt.executeUpdate(update2); stmt.executeUpdate(update3); conn.rollback(point1); conn.commit();
要点:同一个事务,同一语句,在多次读取过程中,所得到的结果不一致的情况。
如何防止:在执行SELECT语句时加上for update子句
区别:
不可重复读:指某些列的值的不同,
幻影读:指表的总记录数量上的不同。
如何防止:锁表,代价很高。
发表评论
-
Java SE7新特性之二进制字面量
2016-12-14 22:53 831Java SE 7中, 整数类型(byte, shor ... -
浮点数为什么不精确?为什么银行的金额不能用浮点数计算
2016-12-14 22:52 2027浮点数为什么不精确? 其实这句话本身就不精确, 相对精确一 ... -
计算机是如何计算乘法除法的(实际上都是转换为二进制加法计算)
2016-12-14 22:46 6633http://blog.csdn.net/blues1021 ... -
什么是补码、反码、负数在计算中如何表示
2016-12-14 22:39 923负数在计算机中如何表 ... -
Math.abs()绝对值取到的数不一定是正数
2016-12-14 22:37 1271Math.abs() 注释:Note that if th ... -
用BigInteger实现大素数生成算法
2016-12-06 16:42 1875转自:http://www.cnblogs.co ... -
加密(AES)、公私钥(PKI)、摘要(DIGEST)、签名(SIGNATURE)、证书(CERT)的形象解释和组合用法
2016-09-15 18:19 94231.鲍勃有两把钥匙,一把是公钥,另一把是私钥。 ... -
RSA加密公私钥生成工具(openssl)
2016-09-15 13:00 1194https://www.openssl.org/source/ ... -
RPC原理详解
2016-06-23 20:47 581RPC 功能目标 RPC 的主要功能目标是让构建分布式计算 ... -
Java并发之CountDownLatch、CyclicBarrier和Semaphore
2016-06-23 20:36 1417这次说一下 JUC 中的同步器三个主要的成员:CountDo ... -
线程间协作的两种方式:wait、notify、notifyAll和Condition
2016-06-23 20:35 580在前面我们将了很多关于同步的问题,然而在现实中,需要线程之 ... -
事务相关内容详解(Spring、java)
2016-05-18 14:28 1022Spring的事务传播性与隔离级别 一、事务的四个特 ... -
The final local variable xxx cannot be assigned, since it is defined in an enclo
2016-04-24 17:42 1599本文就自己编程时候遇到的一个问题,简要描述一下,并提出解决 ... -
数据库客户端工具Navicate Premium
2016-04-04 11:08 887数据库客户端工具Navicate Premium -
一个奇葩的excel中无法trim的“空格”的问题
2016-03-29 16:21 1943太奇怪了。打印出来的命名是空格,就是 trim() 不管用。 ... -
List深度复制
2016-02-17 09:34 2686昨天弄了一个类似List<Map<String, ... -
Eclipse导入 jar 源码乱码问题
2015-12-15 19:43 880http://blog.csdn.net/laiwenqian ... -
Java高并发编程的各种陷阱
2015-07-25 17:49 1008www.iteye.com/blogs/subjects/ja ... -
ASM介绍(java字节码操作利器)
2015-06-10 20:46 4370转自:http://www.ibm.com/de ... -
JDK 7 中的 Fork/Join 模式(并发处理)
2015-06-03 19:47 1014转自:http://www.ibm.com/dev ...
相关推荐
SQL Server支持四种隔离级别:未提交读、已提交读、可重复读和序列化,每种级别对应不同的并发处理策略,以适应不同业务场景的需求。 综上所述,数据库原理及应用的学习涵盖了数据库安全基础、SQL Server的具体实现...
3. **隔离级别**:为了平衡并发性能和数据一致性,数据库系统提供了不同的事务隔离级别,包括读未提交(Read Uncommitted)、读已提交(Read Committed)、可重复读(Repeatable Read)和串行化(Serializable)。...
本研究通过分析隐通道的产生机制,总结并提出了几种能够有效避免隐通道的算法。算法模拟的结果显示,这些算法能够消除低安全级事务对高安全级事务的依赖,从而避免了隐通道的产生。在这些算法的应用中,可以采取动态...
- **定义**:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。 - **作用**:确保事务之间不会相互干扰,避免脏读、不可重复读等问题。 #### 持久性 - **定义**:事务一旦提交,对数据库的改变是永久的。 ...
它违反了事务间的**隔离性**,通常可以通过事务隔离级别设置(如读未提交、读已提交、可重复读、串行化)来解决这个问题。 5. **数据库完整性与安全性**:数据库完整性是确保数据正确性的规则集合,包括实体完整性...
- **事务隔离级别**:定义了事务间数据可见性的不同级别,如读未提交、读已提交、可重复读和序列化。 - **乐观锁和悲观锁**:乐观锁假设冲突较少发生,而悲观锁则假设冲突较常见。 #### 四、数据库恢复 数据库恢复...
2. **事务管理**:Tuxedo提供强大的事务处理能力,确保在分布式环境中的原子性、一致性、隔离性和持久性(ACID属性)。 3. **安全性**:Tuxedo支持认证和授权机制,保护系统资源不被非法访问。 4. **监控和管理**...
【银行调度】是一种在金融行业中常见的系统设计问题,它的核心目标是高效、公平地处理大量并发的银行业务请求。在不参考张孝祥的视频情况下,我们可以基于对银行业务的理解和编程经验,探讨如何实现这样的调度系统。...
8. 适当的事务隔离级别:根据并发需求和应用性质,选择合适的事务隔离级别,如READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ或SERIALIZABLE,以平衡并发性和一致性。 9. 优化查询语句:避免全表扫描,尽量...
性,它保证同一事务内的可重复读,为此提供用户多种手动上锁语句,和设置事务隔离级别 第1章结构化查询语言简介 语句 所支持的数据类型 数据类型是可表示值的集。值的逻辑表示是字值。值的物理表示依赖于实现。...
熟悉几种并发控制机制,如锁定协议(共享锁和排他锁)、多版本并发控制(MVCC)和时间戳排序算法。 7. 数据库性能优化:学习索引的类型和使用,以及如何通过索引来提升查询性能。理解查询优化器的工作原理,了解...
6. 并发控制:在多用户环境中,事务是确保数据一致性的重要机制。事务包括一系列数据库操作,必须以原子、一致、隔离和持久的方式执行。并发控制通过锁、两阶段提交等机制避免并发操作导致的数据不一致。 7. 数据库...
1. **消息缓存**:在高并发、大数据量的电商环境中,消息缓存是一种有效提升系统性能的技术。它通过存储并暂时保存用户请求或系统产生的消息,减少对数据库的直接访问,从而降低系统负载。常见的缓存技术包括Redis、...
并发性控制同样是数据库安全性的关键方面,DBMS通过锁机制和事务隔离级别来管理多个用户同时访问和修改数据的情况,以防止数据的不一致性和潜在冲突。 最后,数据库恢复是应对数据丢失和破坏的最终手段,DBMS需要...
数据库还通过事务管理保证数据的一致性和完整性,事务必须具备原子性(不可分割的完整操作)、一致性(事务前后数据库状态一致)、隔离性(并发事务间无干扰)和持久性(事务一旦提交,结果就永久保存)。...
Java作为一种跨平台的面向对象编程语言,以其优秀的可移植性和安全性,常被用于开发银行级别的软件系统。 ATM系统的架构通常分为前端用户界面和后端服务器两部分。前端负责与用户交互,提供友好的图形用户界面,如...
基本的封锁类型有几种,简要说明它们的含义。** - **封锁**:事务在对某个数据对象进行操作前,向系统申请对该数据对象加锁,以确保事务在其执行期间不会被其他事务干扰。这种机制有助于保证事务的隔离性和一致性。...
9. **分布式事务处理**:为了确保数据一致性,分布式系统可能需要支持事务处理,包括ACID属性(原子性、一致性、隔离性和持久性)。 10. **网格计算与云计算**:分布式操作系统也是现代网格计算和云计算的基础,...
对象的状态可以分为以下几种:创建、初始化、使用、销毁等阶段。其中,类的加载机制是确保对象正确创建和初始化的基础。 - **类加载机制**:Java中的类加载是由类加载器(ClassLoader)完成的。类加载过程主要包括...
3. **事务管理**:支持多种事务隔离级别,满足不同的业务需求。 4. **安全性**:保护数据免受非法访问和修改。 5. **可扩展性**:能够轻松地添加新功能或支持新的数据库类型。 6. **兼容性**:支持多种数据库系统,...