不包含任何运行时依赖的常用扩展,尽可能提供你每个入口的运行依赖版本推荐。 制品包含 2 个分支,一个是为 Java EE 构建另一个则会是 Jakarta EE
查看版本历史。
- java 8+
- java 17+
maven
<dependency>
<groupId>io.github.caijiang</groupId>
<artifactId>common-ext-java</artifactId>
<version>[last-version]</version>
</dependency>
<dependency>
<groupId>io.github.caijiang</groupId>
<artifactId>common-ext-jakarta</artifactId>
<version>[last-version]</version>
</dependency>
gradle
implementation 'io.github.caijiang:common-ext-java:[last-version]'
implementation 'io.github.caijiang:common-ext-jakarta:[last-version]'
gradle
implementation("io.github.caijiang:common-ext-java:[last-version]")
implementation("io.github.caijiang:common-ext-jakarta:[last-version]")
可以生成 curl 的 client 拦截器。
基于spring LockRegistry
的业务自动锁,标注在方法上即可获得业务锁能力, 它会尽可能在 Transactional
之前开始工作。
- 锁名称, 业务进行时会用到的锁,支持多个,如果缺省则采用当前方法的签名作为锁名称;如果多个则会同时上多个锁。
- key算法,是一段
Spring EL
其结果即为锁的 key,如果缺省则取第一个参数的 toString (没有就为空)
通过在Java配置中添加
@EnableAutoLock
@Configuration
public class AnyConfigClass {
}
启用
通过调整日志io.github.caijiang.common.lock
的等级即可在日志中获取相关信息。