Thanks to visit codestin.com
Credit goes to github.com

Skip to content

基于spring @EnableXXX的实现原理,抽象分布式锁的解决方案。

License

Notifications You must be signed in to change notification settings

yuanchangjin/smart-lock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

smart-lock

基于spring @EnableXXX的实现原理,抽象分布式锁的解决方案,提供业务上对分布式锁的应用。不做锁的具体实现,默认支持redisson方式的锁,锁的实现可自定义也可用其他开源组件如redis、ZK、数据库等等.既支持注解方式也支持API方式调用

Quick start

Maven

<dependency>
	  <groupId>com.ycj</groupId>
	  <artifactId>smart-lock-core</artifactId>
	  <version>1.0-SNAPSHOT</version>
  </dependency>

Java

1、实例化具体实现的Lock
 @Bean
    public Lock redissonLock(){
        Lock lock = new RedissonLock();
        return lock;
    }
    
2、实例化LockManager
 @Bean
    public LockManager lockManager(){
        LockManager lockManager = new RedissonLockManager(redissonLock());
        return lockManager;
    }
    
3、@Configuration配置类加@EnableLock注解

4、具体方法上加@Lock(key = "lock",lockType = LockType.READ_LOCK,timeOut = 5L)如:

 @Lock(key = "lock",lockType = LockType.READ_LOCK,timeOut = 5L)
 public User getUser(String name){
      .....
      .....
    }

About

基于spring @EnableXXX的实现原理,抽象分布式锁的解决方案。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages