![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 53
luxy_wang
这个作者很懒,什么都没留下…
展开
-
记录一次错误使用java.util.Timer引发的OutOfMemory事件
最近协助排查了关于OutOfMemory的问题,项目是通过java命令启动,最初发现项目因OutOfMemory异常停止服务,结果想用kill命令停止服务时,报错:No Child Processes原创 2023-12-14 14:30:57 · 987 阅读 · 0 评论 -
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 · 753 阅读 · 0 评论 -
log4j异步输出日志时,类名、方法名和行号为问号
这里写自定义目录标题问题描述解决方法问题描述最近有个系统使用的是log4j输出日志,并发比较高的时候,日志输入量大导致系统处理性能降低。后考虑使用log4j异步输出的方式进行日志输出,结果发现日志中输出的类名(%C{4})和方法名(%M)及行号(%L)是问号。原创 2022-04-14 18:13:08 · 2103 阅读 · 0 评论 -
Oracle 分区表索引失效(ORA-01502)
最近在做一个数据相关的项目,业务表采用了分区。在数据处理过程中由于部分数据需要清理,就采用了以下命令进行清除:alter table tablename truncate partition partiotionname;清除之后再次使用insert向表中插入数据时,出现了以下异常:ORA-01502: 索引或这类索引的分区处于不可用状态经确认,是因为tuncate表分区时,导致分区索引无效,之后采取以下措施进行索引重建。查询分区无效索引:select index_name fr原创 2021-08-26 14:48:45 · 2666 阅读 · 0 评论 -
使用AES/GCM/NoPadding加解密遇到几个问题
最近项目中在使用AES/GCM/NoPadding进行接口数据加密。不过在使用过程中需要一些问题:1、解密后中文乱码的问题2、在linux操作系统里解密失败的问题在此就这两个问题,做下记录,以分享给大家首先我参考了这篇博客:https://blog.csdn.net/catoop/article/details/96431206但实际使用过程中确实遇到了上边两个问题。第一个...原创 2020-03-03 20:51:10 · 15050 阅读 · 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 · 1833 阅读 · 4 评论 -
java导出pdf报告之七:合并两个png图片
对于此项,主要是为了实现绿色小圆点根据动态数据显示在不同的位置,如下图所示:然后做了两个png图片,一个是绿色的小圆点,一个是下方的低中高矩形图片(设置颜色部分和文字部分比例2:1,低中高比例1:2:1)刚开始实现是直接在图形图片上画圆点图片,结果发现圆点的颜色给丢了。private String mergePicture(String srcPicture,String ico...原创 2019-12-07 22:04:03 · 447 阅读 · 0 评论 -
java导出pdf报告之六:使用jfreechart生成饼状图和柱状图
关于使用jfreechart生成饼状图和柱状图网上也有一大推,我在这里也不做太多介绍,就直接附上我的实现,并添加了一下注释,供大家参考。生成饼状图:/** * @param name 图片的名称 * @param params 参数 * @param title 图片中要显示图片题目,如果不希望展示,需要送空字符串,不能送null * @return 图片的路径或获取地址 */...原创 2019-12-07 22:03:43 · 3220 阅读 · 0 评论 -
java导出pdf报告之五:poi-tl的使用-图片模版和列表模版
对于图片模版和列表模版相对就简单了,可以参考帮助文档,下边我也只做简单的介绍了对于文档中的饼状图、柱状图,我是在导入数据的时候,直接根据数据生成了相应的图片,然后保存在文件服务器,并把路径保存到数据库中图片模版:{{@var}}BufferedImage picture = ImageIO.read(new FileInputStream(picturePath)); //获取图片对...原创 2019-12-07 22:03:19 · 2810 阅读 · 0 评论 -
java导出pdf报告之四:poi-tl的使用-表格模版
poi的好用之处很大体现在它的表格处理上,接下来我就结合我的实际应用来看看它的使用首先我们来看看第一个表格,这是一个很普通的表格:这个表格其实只需要按照poi-tl一般的表格处理进行数据填充就可以了模板里使用:{{#flora_table }}代码如下:reportDatas.put("flora_table",new MiniTableRenderData(getFlo...原创 2019-12-07 22:03:00 · 10994 阅读 · 1 评论 -
java导出pdf报告之三:poi-tl的使用-文本模版
前边给大家介绍了具体要实现的需求以及在实现过程中,选择实现方式的一些想法和简单过程。这一篇文章我将给大家介绍poi-tl在具体使用的遇到的一些困惑和之后解决方案。首先我们要了解一下poi-tl,下边的图片截取自poi-tl在github上的介绍其开源项目在github上,具体介绍可以到github上去查看,poi-tl其帮助文档可以参看:poi-tl中文帮助文档首先我们要在po...原创 2019-12-07 22:02:37 · 3219 阅读 · 0 评论 -
java导出pdf报告之二:各项需求技术分析
在上一篇博客中我们看到了这份报告中的部分需求,这篇我们来分析一下以上各个需求的技术难点和选择。以下是我拿到需求后从技术角度考虑到的一些问题:如何动态生成相应的PDF饼状图和柱状图使用什么技术来生成饼状图、柱状图和表格如何动态的插入到PDF文档里需求中图片处理的地方,如何动态生成相应的图片表格里不同颜色的圆点如果放入到表格里如何将word转成pdf以下我来一一介绍下我的思路:1...原创 2019-12-07 22:02:18 · 666 阅读 · 0 评论 -
java导出pdf报告之一:需求描述
最近接到一个需求,需要要根据用户导入的数据,生成相应的PDF模版,其中包括段落、列表、表格、柱状图、饼状图以及图片处理等等。各项介绍具体如下: 段落 图中的4、5、1和1.5.0是动态数据 列表 整个参考文件是动态数据 表格 表格一里的数据动态数据表格二中的数据动态生成的,最后一列【评估】是根据检测值显示不同颜色的圆点表格三中的数...原创 2019-12-07 22:02:00 · 788 阅读 · 0 评论 -
IDEA + Maven + Protobuf 配置和使用
最近学习NIO学到了netty,继而了解到了个神奇的东东protobuf,这个是干什么的我就不在此赘述了,这篇博文的主要目的是记录和分享protobuf配合idea以及maven的使用安装protoc首先我们需要下载protobuf,github下载地址根据自己电脑的情况下载相应的包,然后解压到一定的位置。我使用的64位win10,需要配置环境变量,在path中添加(配置后可以直接在cm...原创 2019-09-10 15:46:55 · 4858 阅读 · 0 评论 -
Spring原理学习--实现一个类似@Autowired的注解
本次记录和大家分享的是对注解原理的一些认识,我这里主要通过实现Spring的后置处理器BeanPostProcessor来进行赋值处理首先定一个我的注解:@Target(ElementType.FIELD)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic @interface MyAnnotation {...原创 2018-12-11 17:16:31 · 1852 阅读 · 0 评论 -
Spring原理学习--扩展@Conditional注解
今天深入学习了Spring的@Conditional注解。@Conditional注解可以根据代码中设置的条件装载不同的bean,在设置条件注解之前,先要把装载的bean类去实现Condition接口,然后对该实现接口的类设置是否装载的条件。具体的使用方法网上很多,在此就不再赘述。今天主要想记录和分享一下,在单纯Spring的环境下,实现类似于Springboot中@ConditionalOnE...原创 2018-12-10 15:24:56 · 797 阅读 · 0 评论 -
RandomAccessSource not opened
最近在使用word模板生成pdf,一开始由于一些流没有关闭,导致内存溢出,出现"too many open files",后来就对代码中流和读写对象一通关闭。 代码调整之后,本以为可以完美的解决问题,结果又出现一个莫名的异常“java.io.IOException: RandomAccessSource not opened”,问度娘吧,没有找到合理的解决办法。然后就可...原创 2018-05-02 18:13:57 · 3159 阅读 · 4 评论 -
java实现打印list中重复次数最多的前n个数据
如:list中有1,3,4,5,1,7,5,3,4,2,1,5,1…… 当输入输入参数n为1时,打印1;当输入参数n为2时,打印1,5public void printTopN(List<Integer> numbers,int n){ //先统计各个数据出现的次数 Map<Integer,Integer> countMap = new HashMap<Integer,Integ原创 2017-04-07 14:00:42 · 2634 阅读 · 0 评论 -
maven项目更新报“Cannot nest 'xx/src/main/resources' inside 'xx/src ……”
eclipse maven Cannot nest 'xx/src/main/resources' inside 'xx/src原创 2017-03-21 14:02:14 · 3462 阅读 · 5 评论 -
spring整合quartz,实现自助动态管理自动任务
之前在我们的项目中引入了quartz框架,来实现分布式自动任务处理。之后提出的需求是:希望能够在管理系统中可以 查看所有任务、暂停/启用自动任务、动态新增/删除、立即执行、修改cron表达式等原创 2017-03-24 11:05:36 · 869 阅读 · 0 评论 -
银联POS标准中的BCD压缩
在做对接银联标准的POS机时,在其标准里发现了其使用IOS8583报文中,所有数字域都使用了BCD压缩编码,今天就整理一下银联标准中的BCD压缩算法。原创 2017-03-15 16:40:02 · 2405 阅读 · 0 评论 -
Spring下自定义xml标签
spring框架下自定义一个标签,为以后定义一组标签,来控制流程处理做准备。自定义一个标签需要以下步骤:确定标签的属性,编写对应的java bean 根据java bean编写对应xsd文件编写标签注册类NamespaceHandler和标签解析类BeanDefinitionParser配置spring.handlers和spring.schmas在spring的配置文件中使用标签原创 2017-03-16 15:27:37 · 4298 阅读 · 0 评论 -
spring security增加图形验证码
spring security登录控制,增加图形验证码校验。对于这个需求,网上的解决方案比较多,如使用filter、自定义Provider…… 我采用方法是采用增加AuthenticationProvider的方式。原创 2017-04-20 16:16:28 · 4419 阅读 · 6 评论 -
spring security authenticationProvider用法及关闭不隐藏UserNotFoundException的解决
这两天采用了spring security做登录验证,上一篇说到了增加图形验证码的解决办法,我们在config中增加了一个authenticationProvider的实现类。接下来我遇到的问题是用户登录失败(用户不存在或密码错误)之后,security框架直接返回的是验证失败。而我的需求是将用户不存在和密码错误区分开来,然后做不同的后续工作原创 2017-04-21 13:57:21 · 19211 阅读 · 11 评论 -
银联POS工作密钥生成
根据银联POS终端应用规范,我们了解到POS交易中保函两类密钥: 密钥加密密钥 key encryption key; KEK和工作密钥 working key; WK 而工作密钥有包括:PIN加密密钥、 MAC计算的密钥和磁道数据加密密钥原创 2017-05-03 18:22:12 · 2023 阅读 · 2 评论 -
Unable to register MBean [HikariDataSource (HikariPool-2)] with key 'dataSource'
Unable to register MBean [HikariDataSource (HikariPool-2)] with key ‘dataSource’; nested exception is javax.management.InstanceAlreadyExistsExcept原创 2017-05-04 16:52:45 · 4929 阅读 · 0 评论 -
authentication is required (java发送邮件)
使用java实现邮件发送,今天遇到个authentication is required原创 2017-04-25 12:24:07 · 2081 阅读 · 1 评论 -
java httpClient使用代理实现互联网公网访问
项目生产环境往往会有这样的需求,内网的生产环境的应用需要访问互联网上第三方的服务,但又出于安全考虑,不允许该生产机直接访问互联网,这时我们往往通过代理方式来实现网外服务的访问:我们可以在可访问互联网的机器上,使用nginx或者apache做代理,然后通过httpClient的代理机制实现原创 2017-05-16 18:20:21 · 7398 阅读 · 0 评论 -
log4j、logback和slf4j混合使用趟过的坑
背景:之前的一个项目采用log4j和slf4j做日志输出,后来引入了dubbo+zookeeper。新的项目采用logback和slf4j。老的项目需要使用maven引用新项目生成jar发现的问题:做好一切准备后,发现控制台日志不停的刷,几分钟可以刷200M+,主要来自org.apache.zookeeper.ClientCnxn的debug日志。原创 2017-08-03 21:07:20 · 11197 阅读 · 1 评论 -
使用Dubbo+zookeeper,使自己开发机上的provider服务启动不注册到zookeeper
需求描述: 1、我们有专门的服务来部署联调环境,用于和渠道端进行联调 2、后台开发人员和联调环境使用同一个zookeeper 3、开发人员在自己开发机上启动服务时,需要暴露的服务会注册到zookeeper上,导致联调环境会把请求发送到开发人员机器上 4、所以需要开发人员机器上的应用启动时不向zookeeper原创 2017-08-05 10:42:57 · 4992 阅读 · 0 评论 -
java实现base64编码和解码
编码规则:1、将3个字节转为4个字节,即每6个字节一组,高位补0 2、原字节长度不是3的整数倍,结果串末尾使用=号补齐以下是使用java代码的是实现public class Base64 { /** * byte数组中单个字节对应的字符 * */ private static final char[] i原创 2016-05-11 11:08:53 · 2893 阅读 · 2 评论