Locking
要指定要使用的锁定模式,您可以在查询方法上使用 @Lock
注解,如下例所示:
Example 1. Defining lock metadata on query methods
interface UserRepository extends Repository<User, Long> {
// Plain query method
@Lock(LockModeType.READ)
List<User> findByLastname(String lastname);
}
该方法声明会导致触发查询配备 LockModeType
为 READ
。您还可以在您的存储库接口中重新声明 CRUD 方法并添加 @Lock
注解,从而为 CRUD 方法定义锁定,如下例所示:
Example 2. Defining lock metadata on CRUD methods
interface UserRepository extends Repository<User, Long> {
// Redeclaration of a CRUD method
@Lock(LockModeType.READ)
List<User> findAll();
}