- 博客(26)
- 资源 (3)
- 问答 (3)
- 收藏
- 关注
原创 通过WebSocket实现异步导出
本篇文章记录大批量数据导出时间过长,导致接口请求超时问题。解决思路与流程前端点击导出按钮时开启websocket连接逻辑处理异步执行文件处理好后,得到文件的绝对路径后台socket通知前端绝对路径的地址前端下载文件到浏览器第一步WebSocket配置大家是可以直接复制使用第二步我的处理是只有导出时才启用socket连接,下载文件后关闭,也可以设置为全局性的,方便处理其他通知。
2024-01-11 09:55:50 1501
原创 Vue预览word/pdf文件(内外网均可)
预览word文件实现方式有1 将文件放在前端静态文件中 实现本地预览缺点:前端包臃肿 多文件不适合2 将文件放在服务器指定目录下 内外网均可预览。
2022-11-28 15:00:00 6080
原创 若依@Excel注解自动获取导出字段,字典解析
若依系统中实体类导出字段使用了@Execl若不是若依系统 最后附有excel接口如导出加上@Excel(name = "字段名") 需要导出数值的中文解析 则加上dictType = 字典名(在后台字典配置)。普通导出:@Excel(name = "单位")带字典解析导出:@Excel(name = "授权状态", dictType = "sys_true_false")系统后台字典配置:新增的字典也会存在redis缓存中(直接查询缓存或mysql都行)
2022-09-15 17:03:06 20840 8
原创 后台添加登陆次数限制(Ruoyi若依前后分离版)
简单来讲就是 同一用户输入密码错误某次以上 限制登陆一段时间实现这个功能分为两点记录密码错误次数和错误时间 密码正确后清除错误次数...
2022-05-30 11:19:38 10251 41
原创 若依(RuoYi)SpringBoot框架密码加密传输(前后分离板)
目前登录接口密码是明文传输 为了更高安全性 我准备调整为加密方式传输( 这里选择Rsa加密算法) 并分享下编写过程大概加密流程:后台生成随机公钥私钥前台拿到公钥集成jsencrypt实现密码加密传输加密后的密码给后台后台通过私钥对加密后的密码进行解密若依详细登陆流程
2022-05-25 14:52:57 18649 30
原创 若依系统取消验证码,超时登陆
版本:若依前后端分离系统1:改变令牌时间延长登陆的超时时间2:注掉前后台验证码中部分代码看需求,建议使用此方法,永久登陆不超时不太安全。
2022-05-12 16:13:36 7825
原创 Navicat窗口很大怎么解决
这个窗口是4k笔记本navicat显示效果这个窗口是笔记本外接1080p显示器navicat显示效果这个是电脑缩放当navicat放在1080p显示器上时 navicat窗口变得奇大 很影响查看数据...有没有大佬能解决~ . ~...
2021-10-25 17:31:13 8825 19
原创 泛型List转List对象(Json转换工具类)
上期讲解了因为是通用方法 返回的结果值为泛型List类型在使用list时 需要转换为list对象。数据量多时JSON.toJSONString会很慢java发射方式和强转方法比阿里巴巴fastJson方式快了40多倍JAVA反射方式转换未做类型校验 这样转换并不安全List mapList = (List)jsonObject.get("list");强转方式 最适合 首先判断obj是否是List类型,然后使用class.cast做类型转换
2022-12-06 10:00:00 6367 1
原创 Java多线程查表(封装方法 多表通用)
经过多线程的学习和实践 总结了两种多线程查表方法两种方法都经过我的封装 某表使用时 server层加上方法sql即可查询流程:1 count全表条数2 通过总条数 将全表数据分为10份3 开辟10个线程查询limit语句(线程数可自定义)以下方法均以mysql数据库测试 其他库同理。
2022-12-05 15:00:00 2795
原创 HashMap/ArrayList定义最佳初始容量
那么当HashMap中的元素个数超过16×0.75=12(这个值就是阈值或者边界值threshold值)的时候 就把数组的大小扩展为2×16=32 然后重新计算每个元素在数组中的位置 而这是一个非常耗性能的操作 所以如果我们已经预知HashMap中元素的个数 那么预知元素的个数能够有效的提高HashMap的性能。的时候(初始为10 当添加第11个元素的时候)就会进行扩容 新的容量为旧的容量的1.5倍)基于每次扩容为上次容量的1.5倍 我们可以给定初始值为容量的1.5倍。扩容倍数为当前数据大小的。
2022-11-24 10:00:00 851
原创 SpringBoot定时任务(ClickHouse定时写入数据)
上篇文章介绍了本篇文章再介绍下clickHouse数据库的定时写入数据跟redis定时任务一样 同样使用@Bean和@Scheduled注解 上篇已经介绍过SpringBoot定时任务注解 这里就直接上测试代码了在使用无定时任务需求 可直接在接口中调用导入方法。
2022-10-18 16:00:52 1325
原创 SpringBoot定时任务(Redis定时写入数据)
SpringBoot定时任务使用注解@BeanSpring的@Bean注解用于告诉方法,产生一个Bean对象,然后这个Bean对象交给Spring管理。产生这个Bean对象的方法Spring只会调用一次,随后这个Spring将会将这个Bean对象放在自己的IOC容器中。SpringIOC 容器管理一个或者多个bean,这些bean都需要在@Configuration注解下进行创建,在一个方法上使用@Bean注解就表明这个方法需要交给Spring进行管理。@Scheduled需要在启动类添加@E
2022-09-26 14:03:48 1613
原创 连表查询SQL优化
这条sql是先联合两张全部数据量 再根据时间查询 导致两张表全部数据量结合 fan表数据量很大 应该先限制fan表时间后 再连表查 如果查询的mysql数据库 待查好几十秒了。最后优化的sql是先查询出alarm,fan表这个时间段的数据 再进行连表查 相比两种全表关联 大大减少了查询条数和等待时间。优化一次后 fan表中全表数据已经限制到了需要查询的时间 按照这个逻辑 我们把alarm表也限制在查询时间内。通过需求了解查询是要将两张表联合查询 当写出sql后才发现事情并没有那么简单。
2022-09-21 11:15:29 1650
原创 窗口函数(Mysql与ClickHouse)
窗口函数也称开窗函数,简单来说就是对于一个查询SQL,将其结果集按指定的规则进行分区,每个分区可以看作是一个窗口,分区内的每一行,根据 其所属分区内的行数据进行函数计算,获取计算结果,作为该行的窗口函数结果值。rank () :对每个分组行进行排名返回当前行的排名,有间隔;若排序字段的数据重复,则跳过该排名dense_rank():对每个分组行进行排名,按照值排序时产生一个自增编号,数据相等时会重复,但不会跳过排名row_number():行编号 返回其分区中当前行的编号。
2022-09-16 10:00:00 1217
原创 Java导出大批量数据(异步多线程导出篇)
之前文章介绍了导出文件格式篇xls,xlsx,csv)分批查询导出篇本篇介绍下在分批导出时使用线程进行导出。
2022-09-06 16:00:00 7796
原创 Java导出大批量数据(分批查询导出篇)
上篇文章介绍了java导出文件格式篇xls,xlsx,csv本篇介绍下 大批量数据的导出思路和方法导出数据慢的原因:一次性查询太多数据 sql会很慢 太多数据导出处理很慢这里我讲解下分批查询和分批导出分批查询方法一: 根据数据量 分割每一部分数据二: 根据查询时间间隔 分割为每一天一个时间段
2022-09-05 15:21:08 9153 3
原创 Java导出大批量数据(文件格式篇xls,xlsx,csv)
java导出我准备分为三篇文章介绍文件格式篇xls,xlsx,csv,分批查询导出篇,异步多线程导出篇一起来看看吧Java导出excel文件 我分为了xls,xlsx,csv三个文件格式首先介绍下三种文件格式的优劣导出少量数据 需要表头样式的 采用xlsx文件导出导出大量数据 无表头样式要求 采用csv文件导出。.........
2022-09-01 17:20:05 10214 3
原创 MySql快速插入千万数据测试
为便于测试 新建表格 插入两千万条测试数据。若文章有误或疑问,欢迎大家留言讨论~😜。Mysql版本:5.7.34。
2022-07-27 17:30:17 680 1
原创 Linux系统卸载,安装,升级,迁移clickHouse数据库
1.查看clickhouse版本rpm -qa|grep clickhouse2.查看clickhouse服务service clickhouse-server status3.关闭clickhouse服务sudo service clickhouse-server stop//或者直接结束进程ps -ef|grep clickkill -9 进程码4.卸载clickhouseyum remove -y clickhouse-common-static...
2022-07-26 15:57:11 3030 1
原创 本地有两个mysql服务
本地有两个mysql服务 连接本地数据库时建好库和表格 连接时却提醒我没有这个库确定库和表格无误后想到了之前升级过一次mysql版本(5.5->5.7)之前的5.5版本没有卸载 导致本地起着两个mysql服务navicat显示是5.7版本实际上系统连接的是看不到的5.5版本的库
2022-03-21 17:50:24 3895
原创 ClickHouse导入数据注意事项
接口向clickhouse导入数据时 导入条数总是不对检查接口数据无问题 于是就检查了clickhouse表最后发现是DDL语句有问题CREATE TABLE 表格名( `create_time` DateTime COMMENT '数据创建时间', `fan_id` Int32 COMMENT '风机id', ... ... ... 省略)ENGINE = ReplacingMergeTreePRIMARY KEY (creat
2022-03-11 11:46:13 1306
原创 MyBatis传多个参数接口展示
MyBatis传多个参数接口展示 接口在传多个参数时可能遇到映射文件无法获得传入的参数这里展示一个测试多个参数接口方法我采用的方法是将多个参数放入Map里无需再更改接口名注释
2022-03-11 11:05:06 631
原创 Redis更新注意事项
在一次连接本地redis时 点击键 无法加载 并提示 scan commands not supported by redis-server
2022-02-22 14:45:59 1434
Linux的clickhouse安装包(21.3.4.25版本)
2022-07-26
window版node-v11.15.0安装包
2022-05-13
window版node-v12.22.9安装包
2022-05-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人