- 博客(63)
- 资源 (4)
- 收藏
- 关注
原创 记录一次错误使用java.util.Timer引发的OutOfMemory事件
最近协助排查了关于OutOfMemory的问题,项目是通过java命令启动,最初发现项目因OutOfMemory异常停止服务,结果想用kill命令停止服务时,报错:No Child Processes
2023-12-14 14:30:57
1087
原创 使用wxPython和pillow开发拼图小游戏(四)
使用wxPython和pillow开发拼图小游戏,用时的计算、重置游戏和关闭窗口事件处理
2023-07-14 16:12:31
6422
1
原创 使用wxPython和pillow开发拼图小游戏(二)
使用wxPython和pillow开发拼图小游戏(二): 单格点击事件和判断拼图是否完成的具体实现。
2023-07-13 08:30:57
491
原创 ffpyplayer.pic.Image 转为 PyQt5.QtGui.QImage
ffpyplayer.pic.Image 转为 PyQt5.QtGui.QImage
2023-06-28 14:07:12
375
原创 ElasticSearch-7.14.0 升级log4j,报错java.security.AccessControlException: access denied(“java.lang.Runtim
ElasticSearch-7.14.0 升级log4j,报错:java.security.AccessControlException: access denied("java.lang.RuntimePermission", "getClassLoader")
2023-06-26 10:57:10
904
原创 log4j异步输出日志时,类名、方法名和行号为问号
这里写自定义目录标题问题描述解决方法问题描述最近有个系统使用的是log4j输出日志,并发比较高的时候,日志输入量大导致系统处理性能降低。后考虑使用log4j异步输出的方式进行日志输出,结果发现日志中输出的类名(%C{4})和方法名(%M)及行号(%L)是问号。
2022-04-14 18:13:08
2428
原创 Oracle 分区表索引失效(ORA-01502)
最近在做一个数据相关的项目,业务表采用了分区。在数据处理过程中由于部分数据需要清理,就采用了以下命令进行清除:alter table tablename truncate partition partiotionname;清除之后再次使用insert向表中插入数据时,出现了以下异常:ORA-01502: 索引或这类索引的分区处于不可用状态经确认,是因为tuncate表分区时,导致分区索引无效,之后采取以下措施进行索引重建。查询分区无效索引:select index_name fr
2021-08-26 14:48:45
2887
原创 docker安装gitlab遇到的坑--Permissions 0755 for ‘/etc/gitlab/ssh_host_ed25519_key‘ are too open.
前几天不小心修改了gitlab下文件夹的权限,导致gitlab不能正常使用,在统一将文件的权限改为755时,发现gitlab可以正常使用,但使用ssh免密pull和push的时候,gitlab会报错:Permissions 0755 for '/etc/gitlab/ssh_host_ed25519_key' are too open.经过查证该文件ssh_host_ed25519_key 和 ssh_host_rsa_key的权限设置过大引起的,应该配置为600。接下来记录一下修改的过程:使用
2021-03-02 20:26:01
3356
原创 Linux上java使用JNA调用C/C++函数传参(数组,二维数组)
使用JNA调用C/C++函数的步骤:1、定义JNA接口API(C/C++).h文件2、实现.h文件中定义的函数(.c)文件3、编译.c文件,生成动态库文件(.so)4、应用JNA的包jna-*.jar,我这里用的是jna-5.6.0.jar5、定义java接口,加载动态库,并定义相应的API方法6、通过java接口,调用相应的方法今天测试了,java和C/C++函数之间一维数组和二维数组的传参。一维数组一维数组比较简单,直接上代码:1、testJNA.h#include <std
2020-12-06 21:51:26
3180
5
原创 使用AES/GCM/NoPadding加解密遇到几个问题
最近项目中在使用AES/GCM/NoPadding进行接口数据加密。不过在使用过程中需要一些问题:1、解密后中文乱码的问题2、在linux操作系统里解密失败的问题在此就这两个问题,做下记录,以分享给大家首先我参考了这篇博客:https://blog.youkuaiyun.com/catoop/article/details/96431206但实际使用过程中确实遇到了上边两个问题。第一个...
2020-03-03 20:51:10
15705
4
原创 java导出pdf报告之八:word文档转成pdf
在此我就只介绍我使用的方法:xdocreport。xdocreport适合对转换后的pdf格式要求不高的情况,我们需求中的pdf虽然内容种类和格式都挺多,但最后实现出来,基本可以满足需要,并且xdocreport使用起来确实方便。public void makePdf(String basePath, String fileName) throws Exception { F...
2019-12-07 22:04:35
1980
4
原创 java导出pdf报告之七:合并两个png图片
对于此项,主要是为了实现绿色小圆点根据动态数据显示在不同的位置,如下图所示:然后做了两个png图片,一个是绿色的小圆点,一个是下方的低中高矩形图片(设置颜色部分和文字部分比例2:1,低中高比例1:2:1)刚开始实现是直接在图形图片上画圆点图片,结果发现圆点的颜色给丢了。private String mergePicture(String srcPicture,String ico...
2019-12-07 22:04:03
489
原创 java导出pdf报告之六:使用jfreechart生成饼状图和柱状图
关于使用jfreechart生成饼状图和柱状图网上也有一大推,我在这里也不做太多介绍,就直接附上我的实现,并添加了一下注释,供大家参考。生成饼状图:/** * @param name 图片的名称 * @param params 参数 * @param title 图片中要显示图片题目,如果不希望展示,需要送空字符串,不能送null * @return 图片的路径或获取地址 */...
2019-12-07 22:03:43
3397
原创 java导出pdf报告之五:poi-tl的使用-图片模版和列表模版
对于图片模版和列表模版相对就简单了,可以参考帮助文档,下边我也只做简单的介绍了对于文档中的饼状图、柱状图,我是在导入数据的时候,直接根据数据生成了相应的图片,然后保存在文件服务器,并把路径保存到数据库中图片模版:{{@var}}BufferedImage picture = ImageIO.read(new FileInputStream(picturePath)); //获取图片对...
2019-12-07 22:03:19
2967
原创 java导出pdf报告之四:poi-tl的使用-表格模版
poi的好用之处很大体现在它的表格处理上,接下来我就结合我的实际应用来看看它的使用首先我们来看看第一个表格,这是一个很普通的表格:这个表格其实只需要按照poi-tl一般的表格处理进行数据填充就可以了模板里使用:{{#flora_table }}代码如下:reportDatas.put("flora_table",new MiniTableRenderData(getFlo...
2019-12-07 22:03:00
11430
2
原创 java导出pdf报告之三:poi-tl的使用-文本模版
前边给大家介绍了具体要实现的需求以及在实现过程中,选择实现方式的一些想法和简单过程。这一篇文章我将给大家介绍poi-tl在具体使用的遇到的一些困惑和之后解决方案。首先我们要了解一下poi-tl,下边的图片截取自poi-tl在github上的介绍其开源项目在github上,具体介绍可以到github上去查看,poi-tl其帮助文档可以参看:poi-tl中文帮助文档首先我们要在po...
2019-12-07 22:02:37
3329
原创 java导出pdf报告之二:各项需求技术分析
在上一篇博客中我们看到了这份报告中的部分需求,这篇我们来分析一下以上各个需求的技术难点和选择。以下是我拿到需求后从技术角度考虑到的一些问题:如何动态生成相应的PDF饼状图和柱状图使用什么技术来生成饼状图、柱状图和表格如何动态的插入到PDF文档里需求中图片处理的地方,如何动态生成相应的图片表格里不同颜色的圆点如果放入到表格里如何将word转成pdf以下我来一一介绍下我的思路:1...
2019-12-07 22:02:18
720
原创 java导出pdf报告之一:需求描述
最近接到一个需求,需要要根据用户导入的数据,生成相应的PDF模版,其中包括段落、列表、表格、柱状图、饼状图以及图片处理等等。各项介绍具体如下: 段落 图中的4、5、1和1.5.0是动态数据 列表 整个参考文件是动态数据 表格 表格一里的数据动态数据表格二中的数据动态生成的,最后一列【评估】是根据检测值显示不同颜色的圆点表格三中的数...
2019-12-07 22:02:00
833
原创 GIT 常用命令
1、git init 初始化git工作空间2、git clone [remote path] 克隆远程项目3、git add [remote path] 添加本地工作空间与远程的关联4、git checkout -b dev origin/dev 切换分支对commit的文件设置忽略常用以下几个命令5、git rm -r cached . 清除已添加的文件6、git ad...
2019-10-23 10:53:56
142
原创 IDEA + Maven + Protobuf 配置和使用
最近学习NIO学到了netty,继而了解到了个神奇的东东protobuf,这个是干什么的我就不在此赘述了,这篇博文的主要目的是记录和分享protobuf配合idea以及maven的使用安装protoc首先我们需要下载protobuf,github下载地址根据自己电脑的情况下载相应的包,然后解压到一定的位置。我使用的64位win10,需要配置环境变量,在path中添加(配置后可以直接在cm...
2019-09-10 15:46:55
5058
原创 nginx 配置小程序服务端 https+wss 代理
今天使用微信小程序做客户端,springboot+netty尝试做了一个聊天室的小程序,在万事俱备之际,发现小程序的服务端的websocket服务需要支持wss协议,所以做了一些尝试,现记录下来以供大家分享学习:一开始开发调试的时候,我只是用了ws://ip:端口号/ws进行的。当发布到服务端发不到服区器,小程序也上传设置为体验版的时候,发现访问不通了。后来想起在小程序的服务端配置里有一项配置...
2019-09-10 15:10:08
863
原创 mybatis源码学习之——内部处理流程
接下来,我们按照之前写的测试用例,使用debug来梳理一下mybatis的工作流程,测试用例如下:package com.mybatis.mine;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlS...
2019-05-07 15:20:55
305
原创 mybatis源码学习之——核心概念梳理
对于mybatis,其中几个核心概念,对于我们学习理解mybatis原理很重要,接下来我们就先梳理一下它的几个核心概念:名称 含义 Configuration 管理 mysql-config.xml 全局配置关系类,在SqlSessionFactoryBuilder().build()中,会对其进行创建和初始化 SqlSessionFactory SqlSessio...
2019-05-07 11:47:07
229
原创 mybatis源码学习之——配置详解二
上篇我们梳理来mybatis配置文件整体结构,和部分配置项的介绍,下面我们继续梳理mybatis中的<environments>和<mappers>5、environments(环境配置)MyBatis 可以配置成适应多种环境,这种机制有助于将 SQL 映射应用于多种数据库之中, 现实情况下有多种理由需要这么做。例如,开发、测试和生产环境需要有不同的配置;或者想在具...
2019-05-06 15:19:37
193
原创 mybatis源码学习之——配置详解一
使用mybatis首先要了解的就是其配置文件及每项配置的使用方法和注意事项,在此参考官网的配置介绍,挑其中比较常用的几项配置进行学习。首先我们要了解配置文件的层级结构:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0...
2019-05-06 15:19:16
196
原创 mybatis源码学习之——测试类编写
为方便进行debug,我们可以写一个简单的测试类,通过断点来跟踪mybatis的执行过程。1、创建测试包com.mybatis.mine2、创建mybatis配置文件mybatis-config.xml,配置文件对数据库进行简单配置<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUB...
2019-05-06 11:02:48
2379
原创 mybatis源码学习之——源码下载编译
github地址:https://github.com/mybatis/mybatis-3可以使用git或者直接下载的方式,推荐使用git克隆的方式:1、前提是安装了git2、在本地新建一个文件夹mybatis,3、进入文件夹,右键进入git bash4、输入命令git clonehttps://github.com/mybatis/mybatis-3.git进行下载...
2019-05-06 11:02:25
1098
原创 使用jsplumb时遇到的一些问题及处理办法
最近在使用jsplumb做了一个流程图绘制的实现,因为本身不是搞前端出身,布局有点丑,不过大致达到了自己想要的功能效果,具体效果如下:期间遇到一些问题和自己想要的一些效果,现在记录下来和大家分享一下:1、监听画图区域组件的拖拽事件,以获取组件的位置,注册stop方法,从event中获取组件ID,从ui获取事件的位置jsPlumb.draggable(id, { ...
2019-04-08 11:38:37
11916
原创 GIT常用客户端命令整理
本地仓库管理git clone <remote url> 克隆远程仓库 git init <dir> 初始化本地仓库 git status 查看仓库状态本地文件管理git add <filename> 将指定文件加入到缓存区 git add <dir> 将指定目录加入到缓存区 git add -A 将所有目录及...
2019-01-30 16:57:55
369
原创 mysql使用AES对字段进行加解密
应网络信息安全需求,数据库中的一些用户信息要求加密存储,防止被人扒库后用户敏感信息泄露。我们在项目中使用了简单的处理方式,直接使用mysql的 AES_ENCRYPT 和 AES_DECRYPT 进行了加密和解密存储。加密方法:AES_ENCRYPT(value,key) value为需要加密的明文,当然也可以是表中某一列的名称,key为加密使用的密钥解密方法:AES_DECR...
2019-01-24 16:59:46
12961
原创 Spring原理学习--实现一个类似@Autowired的注解
本次记录和大家分享的是对注解原理的一些认识,我这里主要通过实现Spring的后置处理器BeanPostProcessor来进行赋值处理首先定一个我的注解:@Target(ElementType.FIELD)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic @interface MyAnnotation {...
2018-12-11 17:16:31
1919
原创 Spring原理学习--扩展@Conditional注解
今天深入学习了Spring的@Conditional注解。@Conditional注解可以根据代码中设置的条件装载不同的bean,在设置条件注解之前,先要把装载的bean类去实现Condition接口,然后对该实现接口的类设置是否装载的条件。具体的使用方法网上很多,在此就不再赘述。今天主要想记录和分享一下,在单纯Spring的环境下,实现类似于Springboot中@ConditionalOnE...
2018-12-10 15:24:56
848
原创 RandomAccessSource not opened
最近在使用word模板生成pdf,一开始由于一些流没有关闭,导致内存溢出,出现"too many open files",后来就对代码中流和读写对象一通关闭。 代码调整之后,本以为可以完美的解决问题,结果又出现一个莫名的异常“java.io.IOException: RandomAccessSource not opened”,问度娘吧,没有找到合理的解决办法。然后就可...
2018-05-02 18:13:57
3341
4
原创 mysql语句按某一列的指定规则排序
table A中有某一列columA,该列的值包含(0,1,2,3,4,5) 当前的需求为查询结果不包含3和5,且按2,1,0,4的规则进行排序 mysql的实现方式: select * from A where columA in(‘2’, ‘1’, ‘0’) order by FIELD(columA ,’2’,’1’, ‘0’)
2017-09-02 11:52:50
5586
原创 使用Dubbo+zookeeper,使自己开发机上的provider服务启动不注册到zookeeper
需求描述: 1、我们有专门的服务来部署联调环境,用于和渠道端进行联调 2、后台开发人员和联调环境使用同一个zookeeper 3、开发人员在自己开发机上启动服务时,需要暴露的服务会注册到zookeeper上,导致联调环境会把请求发送到开发人员机器上 4、所以需要开发人员机器上的应用启动时不向zookeeper
2017-08-05 10:42:57
5031
原创 log4j、logback和slf4j混合使用趟过的坑
背景:之前的一个项目采用log4j和slf4j做日志输出,后来引入了dubbo+zookeeper。新的项目采用logback和slf4j。老的项目需要使用maven引用新项目生成jar发现的问题:做好一切准备后,发现控制台日志不停的刷,几分钟可以刷200M+,主要来自org.apache.zookeeper.ClientCnxn的debug日志。
2017-08-03 21:07:20
11259
1
原创 基于tobato/FastDFS_Client支持SpringMvc改造
之前在项目中使用到了fastDFS,对于java客户端,最后决定采用tobato的fastDFS_Client。其源码在github上的链接首先简单介绍下fastDFS_Client(以下摘自github)在原作者YuQing与yuqih发布的java客户端基础上进行了大量重构工作,便于Java工作者学习与阅读主要特性: 1. 对关键部分代码加入了单元测试,便于理解与服务端的接口交易,提高接口质量
2017-07-01 11:42:26
19427
18
js+java实现国密算法SM2
2018-12-11
mysql函数,将数字金额转成人民币大写
2017-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人