“锁定”选项卡

要指定描述符的锁定策略，请使用以下步骤：

1. 在导航器中，选择关系或 EIS 根描述符。

   如果描述符的锁定高级属性不可见，请右键单击该描述符并从上下文菜单中或所选菜单中选择选择高级属性 > 锁定。

2. 单击锁定选项卡。

请按此表在相应类型的选项卡的以下字段中输入数据：

字段 | 说明
--- | ---
乐观锁定 | 指定描述符使用乐观锁定。
按版本 | 指定基于版本化使用乐观锁定。
数据库字段 | 选择包含用于乐观锁定的版本值的数据库字段。 只有关系描述符才会显示此字段。
XPath | 单击浏览，定义用于存储版本值的元素或属性的路径。 只有 EIS 根描述符才会显示此字段。 请确保属性的类型符合所选的锁定策略的类型 (版本锁定为`数字`类型，时间戳锁定为`时间戳`类型)。
版本锁定 | 指定描述符使用数字版本锁定。版本字段 (由数据库字段定义，用于关系描述符，或者由 XPath 定义，用于 EIS 根描述符) 必须是`数字`类型。
时间戳锁定 | 指定描述符基于时间戳使用时间戳版本锁定。版本字段 (由数据库字段定义，用于关系描述符，或者由 XPath 定义，用于 EIS 根描述符) 必须是`时间戳`类型。
在高速缓存中存储版本 | 指定是否要将版本信息存储到高速缓存中。 如果选择不为版本字段定义映射，那么必须启用此选项以配置描述符，从而将版本值存储到 Oracle Toplink 高速缓存中。 如果选择为版本字段定义映射，那么必须禁用此选项，以便将版本值存储在对象中。 有关详细信息，请参阅三层应用程序中的乐观锁定。
按字段脚注 1 | 指定使用基于数据库字段的乐观锁定。 只有关系描述符才显示这些字段。
全部字段 | 选择全部字段以进行乐观锁定。
已更改的字段 | 仅选择已更改字段以进行乐观锁定。
所选字段 | 单击添加来选择特定数据库字段以进行乐观锁定。
悲观锁定 | 指定此描述符使用悲观锁定。 仅适用于已配置了 EJB 信息的描述符 (请参阅配置描述符的 EJB 信息)。
等待锁定 | 指定 TopLink 是否应等待数据源锁定。取消选中此选项时，如果执行线程不能在对象上获取读取锁定，则立即引发 `DatabaseException`。 选中此选项时，执行线程将无限制地等待直至读取锁定被释放，此时，执行线程将尝试获取读取锁定。请谨慎使用此选项，因为这可能会导致应用程序死锁。

脚注 1 不能使用通过 `AttributeChangeTrackingPolicy` 锁定的字段 (请参阅属性更改跟踪策略)。

另请参阅

  配置锁定策略