栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

常用的注解

常用的注解

文章目录

springboot

SchedulerLock 分布式锁@PostConstruct@Scheduledsynchronized线程池JsonProperty 返回字段和数据库不一致

springboot SchedulerLock 分布式锁
这个锁要搭配定时任务同时使用。
@Scheduled(...)
@SchedulerLock(name = "scheduledTaskName")
public void scheduledTask() {
   // do something
}


https://www.jianshu.com/p/94a0378798e1
spring 分布式锁 SchedulerLock

ShedLock的作用,确保任务在同一时刻最多执行一次。如果一个任务正在一个节点上执行,则它将获得一个锁,该锁将阻止从另一个节点(或线程)执行同一任务。如果一个任务已经在一个节点上执行,则在其他节点上的执行不会等待,只需跳过它即可 。
ShedLock使用Mongo,JDBC数据库,Redis,Hazelcast,ZooKeeper或其他外部存储进行协调,即通过外部存储来实现锁机制。
@PostConstruct

这个是Bean初始化的时候执行的方法

@Scheduled

@Scheduled(fixedDelay = 1000 * 60 * 60 * 1, initialDelay = 1000 * 5)
定时任务每小时轮询一次,首次执行为5秒后

synchronized
synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种:
synchronized可以保证方法或代码块在运行时,同一时刻只有一个线程可以进入到临界区(互斥性),同时它还保证了共享变量的内存可见性。
修饰一个类
class ClassName{
	public void method(){
		synchronized(ClassName.class){
		}
	}
}
Synchronized作用于整个方法的写法
public void method()
{
   synchronized(this) {
      
   }
};
线程池
线程池还有返回结果数据的线程池
避免重复执行的问题
1 简单的线程池
@Autowired
private ExecutorService executorService;            

 executorService.execute(new Runnable() {
      public void run() {
        System.out.println("Asynchronous task");
      }
});
2 传参数的异步线程池
public class EmailRunnable implements Runnable {
    private String name;
 
    public EmailRunnable(String name) {
        this.name = name;
    }
 
    @Override
    public void run() {
        System.out.println("正在给" + name + "发送邮件......");
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("邮件发送完毕");
    }
}

System.out.println("hello start");
executorService.execute(new EmailRunnable("hangge"));
System.out.println("hello end");
JsonProperty 返回字段和数据库不一致

@JsonProperty(value = “name”)
private String a;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/754074.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号