- 博客(42)
- 资源 (5)
- 收藏
- 关注

原创 java根据模板导出word,并在word中插入echarts相关统计图片以及表格
java根据word模板生成对应的word文档,并且要在word文档中插入Echarts的一些统计图表,例如柱状图、折线图、柱状混合图等。思路是根据Echatrs的option生成json文件,然后通过命令行调用phantomjs执行echarts-convert的js脚本生成Echarts对应图表的图片,然后将图片转为Base64的字符串,替换word文档中的图片占位符,实现往word文档中插入统计图表的需求。
2025-01-15 11:29:32
1278

原创 SpringCloud ZUUL集群 + Nginx + Redis 实现Websocket向客户端推送消息
SpringCloud ZUUL集群 + Nginx + Redis 实现Websocket向客户端推送消息简介Nginx配置Zuul websocket配置Redis配置及websocket配置前端代码简介本文主要是针对分布式场景下的使用websocket的一个解决方案。很遗憾的是,websocketsession是不支持序列化操作,所以也就不可能存在redis中。我们知道在单节点中我们只需要把websocketsession存储在Map中就OK,每次发送通知都从map中根据clientID获取对应
2021-08-26 11:10:28
4224
1
原创 RabbitMQ安装及Springboot 集成RabbitMQ实现消息过期发送到死信队列
RabbitMQ 的死信队列(Dead-Letter-Exchanges,简称 DLX)是一个强大的特性,它允许在消息在队列中无法被正常消费(例如,消息被拒绝并且没有设置重新入队,或者消息过期)时,将这些消息转发到另一个交换机。这个特性在很多场景下都非常有用,比如重试机制、延迟队列等。
2024-04-01 11:27:26
1810
原创 linux安装openGauss数据库
openGauss传统的安装步骤,具体操作比较繁琐,需要设置配置文件、准备安装环境等等,推荐使用docker安装。
2024-03-07 11:13:42
4112
1
原创 SpringSecurity-从入门到精通
Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。 一般来说中大型的项目都是使用SpringSecurity 来做安全框架。小项目有Shiro的比较多,因为相比与SpringSecurity,Shiro的上手更加的简单。 一般Web应用的需要进行认证和授权。 认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户 授权:经过认证后判断当前用户是否有权限进行某个操作
2023-06-21 10:08:42
1815
2
原创 Mysql和达梦数据库备份与恢复
本文介绍了Mysql数据库和达梦数据库全量、增量、自定义备份与恢复。以及文件资源以压缩包的形式实现备份与恢复。使用java定时任务实现备份与恢复操作。
2023-05-08 11:01:30
456
原创 Springboot项目打成jar包后获取resources目录下的模板文件失败
在使用模板文件进行文件相关操作时,使用IDEA本地测试没有任何问题,打成jar包后部署,发现不能正常读取resources目录下template文件夹下的模板文件,出现类似 path resource [xxxx] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:xxxx.jar!xxxx 的问题。
2023-03-06 10:33:15
1523
原创 Java导入导出word文档中的表格
使用poi导出列表数据到word文档中的表格中,表格支持自定义单元格合并,并可选择导出的列。导入带表格的word文档,支持合并单元格的表格内容读取。
2023-02-07 16:02:37
4236
3
原创 Springboot项目自动生成数据库文档
screw是用来生成数据库表结构说明文档的组件,通过引用jar包,通过简单的配置就可以自动生成文档,相当于数据库中的swagger,支持html, word, md三种格式的文档。
2023-01-12 15:12:01
712
原创 Android系统部署java环境并运行Java程序执行jar包
为了运行更为复杂的java程序,可以在安卓设备中安装AidLux(国内软件)或Termux(国外软件),AidLux是基于ARM架构的跨生态(Android/鸿蒙+Linux)一站式AIoT应用快速开发和部署平台APP。通过共享 Linux 内核实现Android 和 Linux 生态融合,为单一设备同时提供Android和Linux运行环境;集成国际主流AI框架和多种开发环境、后台服务程序、编译器及图形开发组件,无须配置开箱即用,极大地简化了开发步骤;
2022-12-14 09:25:20
8999
2
原创 Springboot+WebSocket实现消息推送
WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。 创建定时任务,实现定时向前端推送相关消息。 创建存放ws推送的参数缓存Map,定时任务获取参数,获取数据后推送。
2022-12-01 10:01:58
2010
原创 Springboot配置多数据源(MySQL与MongoDB)与Mongodb TTL索引
Springboot项目配置MySQL与MongoDB两个数据源,默认数据源为MySQL,MongoDB创建TTL数据过期索引。
2022-11-30 15:02:49
2049
原创 bat脚本执行mysql命令repair表
MySQL5.7版本在突然断电后,部分正在写入操作的表会提示需要修复,因此编写一个脚本,自动修复损坏的表。注:请使用ANSI编码格式编辑bat脚本文件(防止中文乱码)
2022-09-05 15:04:21
561
原创 java将word转为html,图片替换为base64代码
使用spric.doc导入docx格式的word,并转换为html代码。转换后会生成3个文件xxx.html,xxx.css,以及存放word中图片的文件夹,需求是要求将样式以及图片一起放到xxx.html代码中,图片采用base64替换标签的src路径。...
2022-07-26 15:09:50
1420
1
原创 SM3加密与解密校验
SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。具体算法标准原始文本参见参考文献[1]。该算法于2012年发布为密码行业标准(GM/T0004-2012),2016年发布为国家密码杂凑算法标准(GB/T32905-2016)。SM3适用于商用密码应用中的数字签名和验证,是在[SHA-256]基础上改进实现的一种算法,其安全性和SHA-256相当。SM3和MD5的迭代过程类似,也采用Merkle-Damgard结构。消息分组长度为512位,摘要值长度为256位。...
2022-07-16 14:04:56
33512
3
原创 java windows导出excel在office中打开报内容错误,需要修复,linux上下载的excel打不开
java windows导出excel在office中打开报内容错误,需要修复,linux上下载的excel打不开,解决方法==》设置输出流的长度
2022-06-20 15:41:33
1629
1
原创 富文本带图片导出word
思路就是将富文本编辑器中的内容转换为html标签,在后台使用ftl格式的模板替换占位符信息,需要注意的是html中的图片的标签是img,但是word并不认img标签,而且有些图片只是一个引用地址,在别的机器上就无法正常显示。所以要对图片解析为base64字符串,再填充到模板上。
2022-06-02 15:41:43
3408
1
原创 windows 自定义执行程序.bat脚本常见问题
bat脚本获取管理员权限@echo off%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exitcd /d "%~dp0"写在bat文件的顶端就可以实现隐藏黑窗口的BAT脚本@echo offif "%1" == "h" goto beginmshta vbscript:createob
2022-05-10 15:32:42
1184
原创 JAVA连接oracle数据库并执行SQL,解决in传参的问题,并将结果放入指定队列
JAVA连接oracle数据库并执行SQL,解决in传参的问题JAVA连接Oracle发送消息至指定队列间隔10秒执行java连接ORACLE数据库并执行SQL语句,查询结果另做处理JAVA连接Oracle/** * 连接ORACLE数据库 每隔10秒查询一次数据,发送到其他队列,并修改数据库已经发送至队列的数据的删除标志 */ private static void extracted() { System.out.println(new SimpleDa
2021-11-29 10:28:07
1333
原创 JAVA 判断字符在字符串中出现的次数(无需循环)
/** * 判断字符在字符串中出现的次数 * @param content 字符串 * @param charStr 字符 * @return 出现次数大于一次返回true */ public static int checkRepeatChar(String content,String charStr){ String resultStr = content.replaceAll("\\Q" + charStr + "\\E",""); int coun
2021-11-19 11:11:32
622
原创 SQL高性能优化
SQL 的书写规范表名要有意义,且标准 SQL 中规定表名的第一个字符应该是字母。注释,有单行注释和多行注释,如下-- 单行注释-- 从SomeTable中查询col_1 SELECT col_1 FROM SomeTable;/*多行注释从 SomeTable 中查询 col_1 */SELECT col_1 FROM SomeTable;多行注释很多人不知道,这种写法不仅可以用来添加真正的注释,也可以用来注释代码,非常方便。缩进就像写 Java,Py
2021-10-26 15:18:01
233
原创 java 时间工具类
import com.sun.istack.internal.NotNull;import lombok.extern.slf4j.Slf4j;import org.apache.commons.collections4.CollectionUtils;import org.apache.commons.lang3.StringUtils;import org.apache.commons.text.WordUtils;import java.text.ParseException;impo.
2021-10-26 14:39:19
629
原创 java 停止从消息队列接收消息
开始或停止从队列接收消息通过JmsListenerEndpointRegistry的start()与stop()方法开始或停止从队列接收消息@Autowired private JmsListenerEndpointRegistry jmsListenerEndpointRegistry; // 停止 if(jmsListenerEndpointRegistry.isRunning()){ jmsListenerEndpointRegistry.stop();
2021-10-26 09:28:05
383
原创 springcloud 配置服务间启动顺序
springcloud 配置服务间启动顺序springcloud 微服务是由多个可独立运行的springboot服务组成,服务间可互相调用。但是如果在服务启动的时候,A服务依赖B服务的一些接口,此时B服务未启动完成,则A服务需等待B服务启动完成后才能启动。本文通过EUREKA服务注册与发现功能实现自定义服务启动顺序。eureka服务注册与发现的机制原理此处不再叙述,本文主要通过EurekaDiscoveryClient获取注册中心注册的服务列表,轮询检查各服务的状态,根据状态(UP)以及调用服务的接口测
2021-10-26 09:23:08
2874
原创 java 将avi视频转换为mp4格式并获取视频文件信息
引入jar包<!-- https://mvnrepository.com/artifact/ws.schild/jave-all-deps --> <dependency> <groupId>ws.schild</groupId> <artifactId>jave-all-deps</artifactId> <version>3.1.1</version> &
2021-10-21 11:04:22
1498
原创 IDEA的5大调试技巧
在项目开发的时候我发现很多小伙伴能非常熟练的使用IDEA编写代码,但是对于IDEA调试的技巧掌握的不是很好,只会F7、F8、F9等这些基本调试功能。而像一些复杂的调试场景就无从下手,如:在for循环中调试某个特定值;多线程、Reactor调试;修改变量的运行值等。下面我们就来分场景介绍一下IDEA的调试技巧,看完掌握后调试bug的效率一定大大提升。1. 条件断点循环中经常用到这个技巧,比如:遍历1个大List的过程中,想让断点停在某个特定值。参考上图,在断点的位置,右击断点旁边的小红点,会出来一
2021-10-15 09:37:31
648
转载 Spring Cloud的微服务架构分析
Spring Cloud是一个相对比较新的微服务框架,2016年才推出1.0的release版本. 虽然Spring Cloud时间最短, 但是相比Dubbo等RPC框架, Spring Cloud提供的全套的分布式系统解决方案。Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造
2021-10-15 09:16:33
124
原创 将List中根据指定字段分组,取非空属性最多的对象
按照指定字段分组,取非空属性最多的对象/** * 根据年龄分组,返回每组中非空字段最多的对象的集合 * * @param persons * @return */ public static List<Person> disposeFeedBacks(List<Person> persons) { List<Person> personList = new ArrayList<>();
2021-10-11 16:56:49
522
原创 JAVA 屏幕录像
java实现屏幕录像的原理:对当前屏幕进行截图,然后将截图合成视频。根据配置(包括视频帧率:即截取屏幕的频率 截图质量 截图及视频文件存放地址)截图并生成视频文件。Config 一些配置文件ScreenRecording 截图工具类JpgToAviUtil 图片生成视频工具类ScreenRecordTest 测试类Config配置文件import org.springframework.beans.factory.annotation.Autowired;import org.sprin
2021-09-24 10:32:50
3151
原创 JAVA字符校验
/** * 获取数组中某个元素的下标 * * @param indexs 数组 * @param index 元素 * @return 元素下标 */ private int getIndexOfArray(int[] indexs, int index) { for (int i = 0; i < indexs.length; i++) { if (indexs[i] == index) {
2021-09-09 11:21:50
479
原创 判断点是否在多边形区域内
/** * 判断是否在多边形区域内 * * @param point 要判断的点 * @param pointHeight 要判断的点的高度 * @param points 多边形区域各顶点的数组 * @param ponitsMinHeight 多边形区域最小高度 * @param ponitsMaxHeight 多边形区域最大高度 * @return boolean */ public stati..
2021-09-09 11:14:54
215
原创 字符超过指定长度自动换行
/** * 字符串超过58个字符后,以空格换加换行符 * @param s * @return */ public static String newLineStr(String s) { StringBuilder sb = new StringBuilder(); int count = 0; for (int i = 0; i < s.length(); i++) { if (s.charAt(i) == '\n') {
2021-09-09 11:12:15
1300
原创 判断数组是否有序
判断数组是否有序 按照元素大小判断/** * 判断数组是否有序 按照元素大小判断 * @param arr */ public static boolean isSorted(int[] arr) { int i; boolean flag = false; for (i = 0; i < arr.length-1; i++) { if(arr[i]>arr[i+1]){ System.out.println("是无序数
2021-09-09 11:06:29
1262
原创 获取两个日期之间的天数/日期加时间/校验日期格式是否严格
/** * 获取两个日期之间的天数 * @param startDateStr 开始时间 * @param stopDateStr 结束时间 * @return 相差天数 * @throws ParseException */ public static int getDatePoor(String startDateStr, String stopDateStr) throws ParseException { SimpleDateFormat dft =
2021-09-09 11:04:49
152
原创 获取bean中非空字段的属性及个数
获取非空属性/** * 获取非空属性 * @param source * @return 所有非空的属性名 */ private static String[] getNullPropertyNames(Object source) { final BeanWrapper src = new BeanWrapperImpl(source); java.beans.PropertyDescriptor[] pds = src.getPropertyDescript
2021-09-09 10:59:14
605
phantomjs-2.1.1-windows、echarts-convert、ECharts-2.2.7.jar
2025-01-15
Erlang和RabbitMQ安装包
2024-04-01
SpringSecurity-从入门到精通 demo源码
2023-06-21
RabbitMq消息队列指南.docx
2022-07-05
Metabase使用指南
2022-06-29
屏幕录像jar包.zip
2021-09-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人