NHibernate教程(7)--并发控制】的更多相关文章

本节内容 什么是并发控制? 悲观并发控制(Pessimistic Concurrency) 乐观并发控制(Optimistic Concurrency) NHibernate支持乐观并发控制 实例分析 结语 什么是并发控制? 当许多人试图同时修改数据库中的数据时,必须实现一个控制系统,使一个人所做的修改不会对他人所做的修改产生负面影响.这称为并发控制. 简单的理解就是2个或多个用者同时编辑相同的数据.这里的用者可能是:实际用户.不同服务.不同的代码段(使用多线程),及其在断开式和连接式情况下可能…
NHibernate教程 一.NHibernate简介 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦.浪费时间的.NHibernate是一个面向.Net环境的对象/关系数据库映射工具.对象/关系数据库映射(object/relational mapping (ORM))这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去. NHibernate除了能将一张表映射为一个对象,还可以将表间关系变为对象的属性.例如学生和课程间的多对多关系就可以…
本节内容 什么是并发控制? 悲观并发控制(Pessimistic Concurrency) 乐观并发控制(Optimistic Concurrency) NHibernate支持乐观并发控制 实例分析 结语 什么是并发控制? 当许多人试图同时修改数据库中的数据时,必须实现一个控制系统,使一个人所做的修改不会对他人所做的修改产生负面影响.这称为并发控制. 简单的理解就是2个或多个用者同时编辑相同的数据.这里的用者可能是:实际用户.不同服务.不同的代码段(使用多线程),及其在断开式和连接式情况下可能…
本节内容 什么是并发控制? 悲观并发控制(Pessimistic Concurrency) 乐观并发控制(Optimistic Concurrency) NHibernate支持乐观并发控制 实例分析 结语 什么是并发控制? 当很多人试图同一时候改动数据库中的数据时,必须实现一个控制系统,使一个人所做的改动不会对他人所做的改动产生负面影响. 这称为并发控制. 简单的理解就是2个或多个用者同一时候编辑同样的数据. 这里的用者可能是:实际用户.不同服务.不同的代码段(使用多线程),及其在断开式和连接…
本节内容 引入 NHibernate中的集合类型 建立父子关系 父子关联映射 结语 引入 通过前几篇文章的介绍,基本上了解了NHibernate,但是在NHibernate中映射关系是NHibernate中的亮点,也是最难掌握的技术.从这篇开始学习这些东西,我将图文结合来说明这里奥秘的知识. 前几篇,我们的例子只使用了一个简单的Customer对象.但是在客户/订单/产品的经典组合中,他们的关系非常复杂?让我们先回顾在第二篇中建立的数据模型. 在图上,我已经清晰的标注了表之间的关系,首先分析Cu…
在上一个教程中,我们讲了Nhibernate的基本使用!So,让我们回顾下Nhibernate使用基本的步骤吧 1.NHibernate配置  ----- 这一步我们告诉了Nhibernate:数据库连接字符串,实体类所在的程序集,映射文件所在的程序集……… 2.创建实体类           -----  定义了数据实体  (O/RM中的O,Object) 3.创建映射文件        -----  定义了 实体和表 之间的映射关系 (O/RM中的M,Mapping) 4.创建数据库和表  …
本节内容 引入 使用NHibernate二级缓存 启用缓存查询 管理NHibernate二级缓存 结语 引入 这篇我还继续上一篇的话题聊聊NHibernate二级缓存剩下的内容,比如你修改.删除数据时,二级缓存是什么策略呢?我们如果使用缓存查询呢?如何管理NHibernate二级缓存呢? 使用NHibernate二级缓存 不知道具体配置的请转到NHibernate之旅系列文章导航观看上一篇的内容,这篇我们再写几个测试,来看看NHibernate二级缓存一些细节: 测试1:更新数据 当我们启用二级…
本节内容 引入 介绍NHibernate二级缓存 NHibernate二级缓存提供程序 实现NHibernate二级缓存 结语 引入 上一篇我介绍了NHibernate内置的一级缓存即ISession缓存.这篇我们来了解下NHibernate二级缓存即ISessionFactory级别缓存.二级缓存是可扩展的,在NHibernate  Contrib上提供了第三方NHibernate二级缓存提供程序. 介绍NHibernate二级缓存 NHibernate二级缓存由ISessionFactory…
本节内容 引入 NHibernate一级缓存介绍 NHibernate一级缓存管理 结语 引入 大家看看上一篇了吗?对象状态.这很容易延伸到NHibernate的缓存.在项目中我们灵活的使用NHibernate的缓存机制.NHibernate性能会大大提高的哦,我们接下来就来探索NHibernate缓存机制吧,这篇我没有准备什么,先来学习下NHibernate一级缓存. NHibernate一级缓存介绍 NHibernate一级缓存即ISession缓存,ISession缓存属于事务级缓存,是N…
本节内容 引入 对象状态 对象状态转换 结语 引入 在程序运行过程中使用对象的方式对数据库进行操作,这必然会产生一系列的持久化类的实例对象.这些对象可能是刚刚创建并准备存储的,也可能是从数据库中查询的,为了区分这些对象,根据对象和当前会话的关联状态,我们可以把对象分为三种: 瞬时对象:对象刚刚建立.该对象在数据库中没有记录,也不在ISession缓存中.如果该对象是自动生成主键,则该对象的对象标识符为空. 持久化对象:对象已经通过NHibernate进行了持久化,数据库中已经存在对应的记录.如果…