docker运行nacos
当华美的叶片落尽,生命的脉络才历历可见。——聂鲁达 命令: 1docker pull nacos/nacos-server 运行: 1docker run -d --name nacos -p 8848:8848 nacos/nacos-server 如果需要连接自定义mysql可以 1docker run -d --name nacos -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=127.0.0.1 -e MYSQL_SERVICE_DB_NAME=nacos -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=nacos -e MYSQL_SERVICE_PASSWORD=nacos -p 8848:8848 nacos/nacos-server 也可以挂载配置文件: 1docker run -d --name nacos -p 8848:8848 -v /path/to/your/application.properties:/home/naco...
gitlab迁移后报错OpenL::cipher::CipherError
大言必自招尤,小心终是寡过。——弘一大师 每次一点gitlab里的保存就500 弄了半天,总算弄好了,方式是采用重置命令 1234~] gitlab-rails console> ApplicationSetting.first.delete> ApplicationSetting.first=> nill
cannot open shared object file: No such file or directory
偿付能力,完全是个调节问题,不是收入问题。——洛根·史密斯 今天集成声网native rtc-linux-server-sdk的时候,遇到报错: 1234567Caused by: java.lang.UnsatisfiedLinkError: /usr/java/packages/lib/libbinding.so: libagora_rtc_sdk.so: cannot open shared object file: No such file or directory at java.base/jdk.internal.loader.NativeLibraries.load(Native Method) ~[na:na] at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388) ~[na:na] at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLib...
spring-state-machine拦截器
不乘人于利,不迫人于险。——刘向 继续分享spring-state-machine状态机的拦截器使用,这里需要留意一个细节: 如果一个事件没有被状态机接受(例如当前状态不是事件的source导致无法转换) 则不会进入拦截器进行处理(但监听器仍然工作,监听器的博客) 这里配置拦截器也很简单: 1234567891011machine.addStateMachineInterceptor(new StateMachineInterceptorAdapter<TestStates,TestEvents>() { @Override public void postStateChange(State<TestStates, TestEvents> state, Message<TestEvents> message, Transition<TestStates, TestEvents> transition, StateMachine<TestStates, TestEvents> stateMac...
spring-state-machine监听器
在做艺术家之前,先要做一个人。——罗丹 分享一个spring-state-machine监听器的用法: 12345678910111213141516171819202122232425262728293031323334353637383940stateMachine.addStateListener(new StateMachineListenerAdapter<States, Events>() { @Override public void stateEntered(State<States, Events> state) { StateMachineMessage message = new StateMachineMessage(); message.setMessage("Enter state " + state.getId().toString()); simpMessagingTemplate.convertAndSend("/topic/sm.messag...
feign使用url参数传参@SpringQueryMap使用
与人沟通,最重要的事情是听取没有说出来的话。——德拉克 今天使用open-feign发起请求时发现个问题,我特别喜欢的url参数传参不好使了: 12345@FeignClient("another-service")public interface MyFeignClient { @GetMapping("/foo/bar") Foo<Bar> get(Foo bar);} 对应我们的controller 12345@GetMapping("foo/bar")public Foo<Bar> get(Foo bar) { // ... return foo;} 然后发起了请求发现根本没收到参数。。。 但如果我们添加了注解@RequestParam 12345@FeignClient("another-service")public interface MyFeignClient { @Get...
docker启动xxl-job-admin
行路多者见识多。——托·富勒 xxl-job官网: 分布式任务调度平台XXL-JOB 这里首先如果直接按照文档里写的 1docker pull xuxueli/xxl-job-admin 很容易拉取失败 我们找到最新版 https://hub.docker.com/r/xuxueli/xxl-job-admin/tags 然后带参数执行: 12345docker run \ -e PARAMS="--spring.datasource.url=jdbc:mysql://localhost:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root" \ -p 18080:8080 \ --name xxl-job-admin \ -d xuxueli...
toastify-js
无论掌握哪一种知识,对智力都是有用的,它会把无用的东西抛开而把好的东西保留住。——达·芬奇 分享一个前端消息提示组件库ToastifyJs https://github.com/apvarun/toastify-js 引入: 1npm install --save toastify-js 或者 123<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/toastify-js/src/toastify.min.css"><script src="https://cdn.jsdelivr.net/npm/toastify-js"></script> 使用: 1Toastify({ text: "This is a toast", duration: 3000 }).showToast(); 复杂例子: 123456789101...
spring bean销毁
天才只可以体会,但绝不能模仿。——狄德罗 对于spring bean销毁,可以使用两种方式: 1.实现org.springframework.beans.factory.DisposableBean接口,重写destroy方法 2.添加jakarta.annotation.PreDestroy注解 但是要注意,例如我这里的代码: 123456789101112131415161718192021222324252627282930313233343536import io.agora.rtm.RtmClient;import jakarta.annotation.PreDestroy;import jakarta.annotation.Resource;import lombok.extern.slf4j.Slf4j;import org.springframework.boot.context.properties.EnableConfigurationProperties;import org.springframework.context.annotation.Bean...
rabbitmq动态创建队列
谁都饶恕比谁都不饶恕同样残忍。——塞涅卡 分享一个动态创建rabbitmq队列的代码: 依赖: 1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId></dependency> 配置: 123456spring: rabbitmq: host: localhost port: 5672 username: xxx password: xxx 代码: 123456789101112131415161718192021222324252627282930313233343536373839404142434445import com.alibaba.nacos.common.utils.JacksonUtils;import lombok.extern.slf4j.Slf4j;import org.spr...
