- 博客(23)
- 收藏
- 关注
原创 springboot整合redisson分布式锁
可重入锁(Reentrant Lock)公平锁(Fair Lock)联锁(MultiLock)红锁(RedLock)读写锁(ReadWriteLock)信号量(Semaphore)可过期性信号量(PermitExpirableSemaphore)闭锁(CountDownLatch)
2024-10-26 23:59:35
691
原创 springboot参数校验
创建自定义校验注解//用于校验手机号的逻辑类//手机号的校验格式//出现错误返回的信息String message() default "手机号格式错误";Class<?Class<?创建校验注解的类//校验注解的类必须实现ConstraintValidator,第一个泛型是注解,第二个泛型是校验参数的类型(手机号是String类型)//初始化方法@Override//获取校验的手机号的格式//value是@Phone注解所注解的字段值。
2024-10-26 23:51:16
349
原创 springboot整合websocket集群
websocket的session无法序列化到redis,当多个服务启动时,A用户在服务1中,B用户在服务2时,A用户和B用户则无法进行通讯。可以依赖mq或者redis消息的发布订阅实现,原理是每个服务收到消息都会发送一条mq消息,所有服务都会收到这个消息,然后每个服务都会向当前session的用户发送websocket消息(如果用户在当前服务中)。本文以redis发布订阅消息演示结合redis发布订阅消息和websocket。
2024-10-26 23:04:47
208
原创 springboot整合websocket-stomp
摘自官网STOMP(简单文本导向消息传递协议)最初是为脚本语言(例如 Ruby、Python 和 Perl)创建的,用于连接到企业消息代理。它旨在解决常用消息传递模式的最小子集。STOMP 可用于任何可靠的双向流式网络协议,例如 TCP 和 WebSocket。虽然 STOMP 是一种面向文本的协议,但消息负载可以是文本或二进制。客户端可以使用SEND或SUBSCRIBE命令发送或订阅消息,以及destination描述消息内容和接收者信息的标头。
2024-10-26 22:26:32
500
原创 springboot整合redis-session实现session共享
不需要多余的配置,只要生成了HttpSession就会将session信息保存到redis中。只要多个项目共用一个reids就可以实现session共享(集群)
2024-10-23 04:07:20
230
原创 springboot缓存
如果没有引入其他缓存依赖时,springboot默认使用ConcurrenMapCacheManager作为缓存管理器本文介绍使用redis缓存。
2024-10-23 02:58:22
194
原创 springboot自定义starter
命名规范:spring官方starter通常命名为spring-boot-starter-{name}, 如:spring-boot-starter-webspring官方建议非官方starter命名应遵循{name}-spring-boot-starter的格式, 如:mybatis-spring-boot-starter。
2024-10-23 00:08:08
182
1
原创 springboot测试
在src/test/java目录下创建一个和启动类同目录的测试类。如果不在同目录,需要通过classes属性指定启动类。
2024-10-22 23:32:07
180
原创 springboot定时任务
Scheduled(initialDelay=1000, fixedRate=3000) :第一次延迟1秒后执行,之后按fixedRate的规则每3秒执行一次。@Scheduled(fixedDelay = 3000) :上一次执行完毕时间点之后3秒再执行。@Scheduled(fixedRate = 3000) :上一次开始执行时间点之后3秒再执行。”) :通过cron表达式定义规则。
2024-10-22 22:54:12
189
原创 springboot国际化
英文:messages_en_US.properties。中文:messages_zh_CN.properties。默认:messages.properties。resources目录下创建i18n目录。在i18n目录下创建不同语言的配置文件。默认和中文配置文件中。
2024-10-22 21:12:54
135
原创 springboot配置
即加载{spring.application.name}-{spring.profiles.include}.properties,{spring.application.name}-{spring.profiles.include}.yml。即加载 {spring.application.name}-{spring.profiles.active}.properties,{spring.application.name}-{spring.profiles.active}.yml。
2024-10-22 20:41:27
620
原创 springboot构建
1.3 @SpringBootConfiguration:允许在上下文中注册额外的 bean 或导入其他配置类。1.1 @EnableAutoConfiguration:启用Spring Boot的自动配置。@SpringBootApplication会自动扫描当前包和子包的Bean。@SpringBootApplication注释是3个注解的合集。运行mvn package可以在target目录下得到一个jar。1.2 @ComponentScan:扫描Bean。以下两种方式任选其一即可。
2024-10-22 18:39:44
298
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人