- 博客(41)
- 收藏
- 关注
原创 docker桌面版启动redis,解决无法连接
在本地创建一个目录,里面有个redis.conf文件,内容如下,启动时绑定这个配置文件目录,并且指定这个配置文件运行
2025-03-14 15:03:59
508
原创 国产麒麟服务器安装docker,部署项目
uname -pCentons系统和其他linux系统的架构是x86,如下这会导致无法安装从其他服务器导出的docker安装包,需要手动下载安装包安装。
2025-01-21 09:23:39
678
原创 aop切面注解
首先配置切面位置 @Pointcut("@annotation(org.hfm.signalr4j.aop.ControllerAnnotation)")所有拥有ControllerAnnotation这个注解的方法,都会被spring扫描到进行拦截。可以自己编写一些log日志注解,redis分布式锁注解,接口限流,简化重复代码的编写。然后获取注解,可以获取注解的一些信息,比如我写的num,就是休眠时间。
2025-01-09 17:07:23
290
原创 TDengine涛思数据库按照时间分组取第一个参数
按照查询的时间范围,取每小时的第一个值,上下差异可以有1小时,也就是在现在的小时如果没有数据,可以取最近的一条数据代替。
2025-01-08 15:46:21
647
原创 @JsonSerialize失效解决
JsonSerialize(using = BigSerializer.class)无效,因为如果是null值会不走序列化的接口实现类,需要使用nullUsing。当在实体类中加入这个注解时,本意是想如果是空值则返回0给页面,但是发现使用。
2024-12-12 18:21:40
841
原创 linux安装jdk
链接:https://pan.baidu.com/s/1VPmKMXN5KCU2qyVFfLUVYg?pwd=ot45提取码:ot45上传后进行解压,tar -zxvf 然后上传的这个文件名称。
2024-08-29 15:34:00
296
原创 Netty使用教程,整合springboot
配置类可以不改,netty不像websocket,可以一直拿到请求头里面的数据,netty只有第一次连接可以拿到,我们将第一次拿到的数据存入map集合,一个Channel对应一个业务id,再弄一个新的Multimap,这个map是谷歌的一个集合,一个key对应多个value,value是一个集合,这样一个业务id可以对应多个客户端。
2024-08-27 17:31:21
695
原创 @NotNull,@NotBlank使用及拦截配置
这是一个最基本的普通返回做测试使用,实际项目中肯定是不行的,要有封装返回类,可以将String改成公司的封装返回类,在controller层加上@Valid开启效验。
2024-08-22 10:18:40
613
原创 java: 常量字符串过长
有个静态字符串常量特别长,idea启动报错静态常量过长,可以使用StringBuilder ,把字符串切割一下,StringBuildersb2 ,最后在拼接在一起sb1.append(sb2)这样就可以解决。
2024-08-22 09:14:24
533
原创 springboot多数据源配置
当有一个mapper查询的都是其他数据的数据时,加上DS注解,value写组名,也就是配置文件的master、slave_1、slave_2即可。配置成功即可使用,默认不加任何操作时都是master主数据库。使用dynamic-datasource实现多数据源配置。更多详细内容可看官方地址。
2024-08-21 14:44:57
579
原创 轻量级限速神器RateLimiter
意思是一秒钟生成0.5个令牌,1秒0.5个令牌,也就是2秒执行1次,但是还有个问题用户与定时任务之间肯定是用户的优先级高,查询时用户需要优先调用。在对接第三方api接口时有的接口会有限制请求次数,如2秒只能请求一次,当页面上多个用户同时访问时会导致这个接口直接炸掉,本地的sleep休眠只能休眠当前线程并不能休眠其他用户请求的线程,所以这时候就需要采取其他措施,有的说加锁加休眠,这样太消耗性能了。用户需要一个,这样令牌好了后只有有用户请求用户永远先执行,令牌不可能存到2个令牌。两个令牌,也就是4秒一次。
2024-08-20 19:35:04
446
原创 消除if-else,简单工厂+策略模式
*** 根据studentType不同,对应操作不同*/@Component@Override@Component@Override@Component@Override。
2024-08-16 15:57:58
170
原创 maven打包依赖
实际项目中会有很多第三方依赖不可以从maven仓库拉取,这些依赖一般放在项目的lib目录或者jar包目录,在运行时需要将这些依赖打包进target目录artifactId和groupId,scope,version可以自己写,不重要,${project.basedir}/jar/WeiChaiPassSalt.jar这个代表当前项目下的jar包目录里面的WeiChaiPassSalt.jar打包进targrt,可以用*代替模糊匹配。
2024-08-12 19:28:13
520
原创 springboot注解的创建及使用
这是一个方法上的注解,可以接受多个参数,在注解里所有的属性都是带上小括号,跟方法名一样,还要默认值,如果注解没有给值会有默认值。
2024-08-12 17:39:55
247
原创 Websocket入门教程,加实时数据
这个map他的值是一个集合,他的键就是一个固定的,比如用户id,固定的id对应的哪个客户端,session就是客户端,使用谷歌的集合一对多,也就是一个用户可以对应多个客户端,多个浏览器,不然新的用户会替换掉原来的map旧值,旧客户端无法接收数据。建立连接后如果后端需要主动发送消息给前端,也就是实时数据之类的,可以使用一个while(true)循环一直循环发送,或者定时器,退出的用户不会推送实时数据,我的里面根据设备id来获取对应的值推送。当客户端退出时根据用户id加上对应的session删除掉他。
2024-08-07 16:45:39
871
原创 docker安装nginx
重新运行--net host 不可以-p,-p之后使用新的配置文件将不在生效。先创建一个nginx,拿到配置文件,然后要执行删除掉这个nginx。
2024-07-02 17:34:00
138
原创 前端传来字符串时间,后端controller转换成Date
根据自己的业务需求是否精确到秒 可以 yyyy-MM-DD 等等。时间字段只需判断是否为null。
2023-04-14 17:02:09
823
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1