`

Session的lock()方法用途

 
阅读更多
session.lock(detachedObject, LockMode.READ);

1.版本检查

2.升级锁为悲观锁

3.把游离对象与当前session关联



Session的lock()方法与update()方法的区别
lock()方法:
1.在执行lock()方法时,如果设定了LockMode.READ模式,则立即进行版本检查,使用类似以下形式的查询语句:select ID from table where ID = 1 and VERSION = 0;如果数据库中没有匹配的记录,就抛出StaleObjectStatException。
2.并不会计划执行一个update语句。

update()方法:
1.在执行update()方法时,并不会进行版本检查,直到Session清理缓存时才会进行版本检查,如果数据库中没有匹配的记录,就抛出StaleObjectStatException。
2.会计划执行一个update语句。

Session的lock()方法与update()方法的相同点
把游离对象与当前session关联。
分享到:
评论

相关推荐

    oraclev$sessionv$session_wait用途详解

    3. **等待原因**:结合`v$session_wait`与其他视图(如`v$lock`、`v$sqltext`),可以深入分析等待事件的具体原因,例如锁定冲突的根源或慢SQL语句。 ### 使用示例与场景 - **性能调优**:当数据库响应变慢时,...

    oracle_v$session_v$session_wait用途详解

    ### Oracle V$SESSION 和 V$SESSION_WAIT 的详细解析 #### 概述 Oracle 数据库提供了大量的动态性能视图(Dynamic Performance ...无论是对于日常维护还是性能调优工作来说,掌握这些视图的使用方法都是非常必要的。

    Application,_Session,_Cookie,_Viewstate,_Cache对象用法和区别

    - 使用`Application.Lock()`虽然可以避免并发访问的问题,但会导致性能瓶颈。 - 不宜存储大量数据,以免占用过多内存。 3. **示例代码** ```csharp // 设置数据 HttpContext.Current.Application["UserID"] = ...

    asp课件/ASP内置对象

    它的主要用途是在不同的用户之间传递和共享信息,如统计网站访问量、维持全局配置信息等。Application对象有以下几个重要特性: 1. **属性和方法**: - **Contents** 集合:存储Application对象的变量值。 - **...

    WEB开发 之 ASP Application 对象(2).docx

    本文将深入探讨`Application`对象的特性、用途以及相关的方法和事件。 `Application`对象的主要作用是存储和共享数据,它能够把一组协同工作的ASP文件绑定在一起,确保这些文件可以访问到相同的全局变量。这些变量...

    oracle标准语法速查表

    v$queue, v$lock, v$enqueue_lock, v$locked_object, v$global_blocked_locks - **定义**:队列、锁、队列锁、锁定对象和全局阻塞锁信息。 - **用途**:处理事务间的数据同步问题。 ##### 32. v$session_connect_...

    Java面试题全集.docx

    Hibernate中的Session提供了多种用于数据操作的方法,每种方法都有其特定的用途和应用场景。 **详细解释:** - **load与get**: - **load**:如果找不到对应的记录,则抛出异常。返回的是实体类对象的代理。 - **...

    experiment

    - 使用Application对象的方法和属性,如`Application.Lock()`、`Application.UnLock()`等来控制对数据的访问,确保多用户环境下数据的一致性和安全性。 2. **熟悉并掌握Session对象**: - Session对象同样是ASP...

    Oracle常用字典表.docx

    ### Oracle 数据字典表与动态视图详解 #### 一、概述 在Oracle数据库中,数据字典(Data Dictionary)是一系列系统表的...掌握这些数据字典表和动态视图的使用方法,对于提高数据库系统的稳定性和性能具有重要意义。

    超级有影响力霸气的Java面试题大全文档

    当客户机第一次调用一个Stateful Session Bean 时,容器必须立即在服务器中创建一个新的Bean实例,并关联到客户机上,以后此客户机调用Stateful Session Bean 的方法时容器会把调用分派到与此客户机相关联的Bean实例...

    oracle用户管理.pptx

    默认情况下,安装数据库时会创建一些预设的用户模式,这些模式通常具有不同的权限和用途,以满足不同类型的数据库操作需求。 综上所述,Oracle用户管理涉及用户和角色的创建、修改和权限分配,以及使用概要文件来...

    Java面试题200+.docx

    **Java Web相关**:涉及JSP和Servlet的用途,JSP内置对象,四种作用域,session和cookie的区别,session的工作原理及无cookie情况下的处理,MVC框架对比,SQL注入和XSS/CSRF防护。 65-75. **异常处理**:throw用于...

    ORACLE紧急情况信息收集.docx

    - 使用`v$lock`、`v$session`等视图查找锁定会话。 - 尝试终止异常会话(`alter system kill session ',<serial#>'`)。 - 分析`v$process`视图中的信息了解进程状态。 **4.3 执行RDA收集信息** - **RDA(Real ...

    ASP.NET教学讲义(吐血推荐)

    **5.5 Lock和UnLock方法** - 说明如何锁定Application对象,防止并发访问导致的问题。 **5.6 添加、更新和移除Application状态项** - 介绍如何操作Application对象中的数据。 **5.7 Cookie** - **创建持久性...

    MS知识点总结.txt

    42. **克隆的用途** - 克隆用于快速复制对象,避免每次创建新对象时的开销。 43. **实现对象克隆** - 实现 `Cloneable` 接口,并重写 `clone()` 方法。 - 使用序列化机制实现克隆。 44. **深拷贝与浅拷贝的区别...

    oracle-用户管理.pptx

    默认的数据库用户,如`SYS`和`SYSTEM`,具有不同的权限和用途。`SYS`用户拥有最高级别的权限,主要用于系统维护和实例管理,通常以`SYSOPER`或`SYSDBA`角色登录。`SYSTEM`用户则拥有DBA权限,用于管理数据库对象和...

    java面试宝典

    21. **并发控制**:讨论线程同步和并发操作的管理策略,如synchronized关键字、Lock接口等。 22. **Struts工作流程**:概述Struts框架处理请求的完整流程。 23. **Tomcat Session管理**:讨论Tomcat如何实现...

Global site tag (gtag.js) - Google Analytics