- 博客(75)
- 资源 (1)
- 收藏
- 关注
原创 java代码中使用linux cp带*通配符导致的空文件问题
在Linux中,星号(*)通常表示通配符,用于匹配任意字符。但在Java中,星号(*)有特殊的含义,表示乘法运算符。因此,在调用Linux命令时,需要将星号进行转义,告诉Java将其作为字符串的一部分处理。通过启用globstar选项(`shopt -s globstar`),可以在命令中使用双星号(**)来匹配任意级别的文件和目录。在Linux中,通过bash来执行命令,可以将命令作为一个数组传递给exec方法。在命令中的星号前添加反斜杠(\)进行转义,使其不被Java解析为特殊字符。
2025-01-14 11:03:38
243
原创 mysql order by后进行limit分页查询出现重复数据
2、排查:查看SQL语句,里面用到了一个union,然后又用到了order by日期字段,mapper层又用来mybatis的分页插件pageHelper。经过查询发现是因为order by后的字段不是唯一字段,导致分页查询出现错乱。(具体底层原因有兴趣的可以自行查看)3、解决:order by日期后,加上一个能确定唯一的字段,如id之类的。测试后发现确实解决问题。1、场景:管理台列表查询莫名出现重复数据,第一页的最后几条数据在第二页的最上面也出现了。
2024-12-02 14:31:35
526
1
原创 文件过大,解析文件入库性能很差
场景:文件过大,包含上百万条数据,甚至峰值能达近千万,文件过大,处理起来很慢。2、多线程处理文件(主要是读取文件后入库)解决思路:切割文件,多线程处理小文件。方案:(java伪代码)
2023-05-23 16:57:32
983
原创 解决后端传给前端(vue)long类型精度丢失的问题
bug场景:后端传递实体类给前端,数据库中主键为bigint,java类中为long类型。从数据库中查出后返回给前端展示,结果精度丢失。问题分析:vue前端对long类型的精度无法接收,javascript 的 Number 类型最大长度是17位,mysql 使用bigint 类型长度是20位。解决方案:返回给前端前通过配置类进行long类型转换string,避免精度丢失。/*** 创建配置类,对返回给前端的数据类型进行转换,long类型转换为String,避免前端造成的精度丢失*/@
2022-04-19 11:10:58
4686
原创 解决Java后端Long类型返回给前端精度丢失问题
解决Java后端Long类型返回给前端精度丢失问题@JsonFormat(shape = JsonFormat.Shape.STRING)
2022-01-05 10:31:46
5184
2
原创 记一次修改rabbitmq 3.8版本默认端口号的过程
1、找到rabbitmq默认配置文件cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.1/sbin/[root@LL-AA-8004376 sbin]# lscuttlefish rabbitmqctl rabbitmq-defaults rabbitmq-diagnostics rabbitmq-env rabbitmq-plugins rabbitmq-queues rabbitmq-server rabbitmq-upgrade
2020-05-29 11:04:16
3276
1
原创 记一次rabbitmq因double ack导致的报错:method channel.close (reply-code=406, reply-text=PRECONDITION_FAILED ...
场景:搭建了一套rabbitmq的高可用服务,生产端和消费端都能正常使用,但在日志中竟然出现了一条Error信息,不能忍啊!Error信息如下:2020-05-13 00:19:13.324 ERROR 12499 --- [68.152.119:5672] o.s.a.r.c.CachingConnectionFactory : Channel shutdown: channel error; protocol method: #method<channel.close>
2020-05-13 17:10:42
7458
原创 springboot项目打成jar包后,放在linux系统上运行时出现文件空指针等问题
场景:使用springboot搭建Fabric-java-sdk的客户端项目,需要将Fabric网络生成的密钥和证书的文件夹拷贝到项目的资源目录或者config包下,在配置文件中配置各种证书的路径,然后在代码中通过这个配置文件获取这些路径,从而读取这些文件并验证密钥和证书。本地是没有问题的,但打成jar包发布到linux测试环境就会出现文件空指针等问题。分析:该项目是springboot工程是...
2020-05-07 10:36:56
1762
原创 docker镜像的导入导出和拉取
场景:在搭建HyperLedger Fabric1.4的基础环境时,会频繁的和docker镜像打交道,公司内网一般都不给力,所以更多的情况是从别的虚拟机上将docker镜像导出,再通过U盘等方式导入在自己的虚拟机上。1.docker镜像的导出(使用docker images查看已有镜像,根据镜像的Image ID保存到本虚拟机的/tmp/docker-images文件夹,保存位置可以自己定)...
2020-04-20 16:02:31
1655
原创 使用Java开发Fabric智能合约Chaincode
场景:之前公司使用的是Fabric1.4,智能合约使用的是go语言开发的。现在为了方便接入到Bass平台,需要切换fabric的java SDK,并且智能合约也使用java开发。1、pom文件引入pom依赖:<dependency> <groupId>org.hyperledger.fabric-chaincode-java</groupId&g...
2020-04-17 16:43:14
8195
14
原创 Element-UI手风琴效果(首次点击“查看详情”打开,再次点击收合)
技术栈:前端是vue,后端是java springboot。场景:filebeat采集docker日志文件的内容,传输到logstash进行过滤和处理,然后发送到Elasticsearch索引库存储。前端通过在页面添加一些检索条件到后端进行ES分页及多条件检索,最后将结果在前端页面进行展示。不知道,别家公司的(ELK)日志采集和展示是怎么做的?目前我们没有Kibana的XX需求就是这样的...
2020-04-08 11:28:13
981
原创 Element-UI列表页添加自增序号
简单粗暴,添加如下代码,完美解决。(pageIndex - 1) * pagesize + scope.$index + 1的计算结果就是当前行的实际序号,简单明了。scope.$index获取当前页的当前行的索引号,一般都是从0开始,与本页的实际行号差1,所以需要加1操作。还要考虑到页码所以需要加上(pageIndex - 1) * pagesize。<el-table-colu...
2020-04-07 15:31:18
2476
原创 The method assertEquals(String, String) is undefined for the type TestJunit
import org.junit.Test;import static org.junit.Assert.assertArrayEquals;public class TestJunit { String message = "Hello World"; MessageUtil messageutil = new MessageUtil(message); pu...
2020-01-10 10:25:47
3275
原创 创建SpringBoot项目pom.xml报错:Unknown:Maven Configuration Problem
场景:新创建的SpringBoot项目,pom文件报错:Unknown:Maven Configuration Problem。版本:使用的IDE为STS;springboot版本2.2.2。报错:报错截图如下:原因:IDE不兼容解决方法:pom.xml中properties节点增加以下内容<properties>&l...
2020-01-10 10:21:22
680
原创 vue中使用sortablejs来实现表格拖拽排序
1、前端vue页面(rowDrop 方法实现行拖拽)<template> <div class="mod-config"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> <el-form-item> ...
2019-11-19 16:00:40
2923
3
原创 Vue弹窗传值
场景:点击新增后,需要将这个页面的分类Id传到弹窗页面,新增的时候绑定这个分类。步骤:1、列表页面中弹窗标签中绑定:classifyId="this.classify":<!-- 弹窗, 新增 / 修改 --> <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :classifyId="th...
2019-11-19 09:32:56
5778
原创 Vue用router-link跳转到下一个页面并带参数
1、在当前要跳转的地方加<router-link></router-link>。其中:to中的'name'参数是在路由注册的页面。<router-link :to="{name:'outdata',params:{classifyId: item.id}}">{{item.name}}</router-link>2、在跳转页面接收参数(注...
2019-11-18 16:58:20
2095
2
原创 点击vue页面链接打开本地exe文件
应用场景:我们的项目要将其他合作公司的项目加到我们项目中,当然不是代码整合,是点击对用系统菜单能够进入对应系统的页面。问题是某些公司做的是.exe这种c端的,现改为b端的已经来不及了,简直是难为我胖虎啊。后来想一个折中的办法,点击菜单出一个带链接的页面(会提示将打开本地某exe应用),然后再点击此链接就直接打开了这个exe应用。勉勉强强应该是可以交付。思路:在web网页中调用本地应用程序的思路...
2019-09-25 17:25:39
12946
11
原创 创建切面类记录访问日志
1、添加依赖<properties> <fastjson.version>1.2.47</fastjson.version></properties><dependencies> <dependency> <groupId>com.alibaba</groupId> ...
2019-08-29 13:54:03
528
原创 任务定时器报错:org.quartz.JobPersistenceException: Couldn't retrieve trigger: invalid stream header: C2ACED
定时器在项目启动时,就会初始化并执行,代码没有检查出来任何问题,启动就报错如下:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled._[2m2019-07-24 08:35:43.599_[0;39m _[31mER...
2019-07-24 10:06:49
9092
原创 docker镜像的导出和导入
搭建Fabric1.4网络,跑通End-2-End案例时,需要对所需要的docker镜像进行拉取,考虑到网络问题,可以将已经有完整环境的虚拟机上的docker镜像进行导出,然后拷贝到现有虚拟机进行导入,具体操作如下:1.docker镜像的导出(根据镜像的Image ID保存到本虚拟机的/tmp/docker-images文件夹)docker save 432c24764fbb> /...
2019-07-16 09:20:11
7503
原创 vue使用多级弹窗(Dialog)出现蒙版遮罩问题
场景:结果列表按钮对应了一个结果列表弹窗,页面中每条结果后又有下载和查看结果按钮,查看结果按钮很明显由对应一个弹窗页面。因此这属于多级弹窗(使用的是Dialog),当出现第一级弹窗时,可以正常关闭开启;当出现第二级弹窗后,第二级弹窗打开后就无法关闭,很明显是出现了蒙版遮罩问题。效果演示:(图二完全置灰,无法点击任何按钮)解决方案:出现蒙版遮罩和层级肯定是有关,但是尝试设置z-i...
2019-07-09 11:00:01
6547
4
原创 java.sql.SQLException: Unknown error 1449(视图报错引出权限问题)
场景:将远程测试数据库中的数据导入到本地数据库,启动项目后一部分功能能正常使用,一部分页面数据无法正常显示,后端报错如下:(项目中使用到了视图,数据同步后,连接远程没有问题,连接本地数据库视图部分就会报错)Caused by: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Error: Method queryT...
2019-07-09 09:25:25
2832
原创 Eclipse/STS 安装Lomok插件
最近参与的springboot项目中使用了@Data注解(编写实体类时,可以减少不必要的代码,不懂的可以去简单了解下),Idea中可以在Settings下的Plugins中搜索Lomok插件直接进行安装,而Eclipse和STS就需要自己手动去下载jar包,执行安装。以下是安装步骤:1.下载lomok的jar包下载地址:https://projectlombok.org/download...
2019-06-19 14:39:06
712
原创 element-ui时间选择器中设置结束时间必须大于开始时间
<el-form-item label="开始时间" prop="startTime"> <el-date-picker v-model="dataForm.startTime" type="date" format="yyyy-MM-dd" ...
2019-06-14 10:00:24
5867
3
原创 vue前端工程传到java后端的日期格式为2019-06-03T16:00:00.000Z,需要将此格式转换为2019-06-03 16:00:00
此问题是属于单纯的日期格式问题,直接上日期格式转换的代码:(转换后的日期可以直接作为条件使用mybatis进行条件查询)public class DateUtil{/** * 将2019-06-03T16:00:00.000Z日期格式转换为2019-06-03 16:00:00格式 * @param oldDateStr * @return */...
2019-06-13 15:24:47
14828
5
原创 在用configtxgen tool创建创世区块时,报错:While parsing config: yaml: unknown anchor ‘OrdererDefaults‘ referenced
在执行以下命令生成创世区块时,出现报错!生成创世区块命令: ./bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./genesis.block报错信息:2019-05-31 16:24:31.914 CST [common.tools.configtxgen] main -> INFO ...
2019-06-03 15:49:45
4665
4
原创 HyperLedger Fabric开发(二)----- 基于CentOS7搭建fabric1.4
Fabri1.4安装文档******************************************************************************** 操作系统:Centos7 ********************** 内存:2GB ********************** 硬盘(SCSI)...
2019-05-30 09:52:57
1277
原创 HyperLedger Fabric开发(一)-----Fabric词汇表
区块链相关的词汇:HyperLedger Fabric:一个基于模块化的分布式账本解决方案平台。区块链区块链网络的核心是一个分布式账本,记录所有在网络上发生的交易。在区块链中,账本会被所有网络中的参与者复制到本地,且每个参与者都在对账本进行维护协作,因此它是完全去中心化的。除了去中心化,还使用了加密技术,每个区块都有唯一的Hash,即便是通过网络将账本复制到本地应用服务器中,也无法篡改...
2019-05-27 14:51:14
561
转载 图片验证码工具类
package com.xxx.xxx.utils;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.RenderingHints;import java.awt.geom.AffineTransform;im...
2019-04-16 15:39:33
299
转载 Eclipse配置工作空间
原文:https://blog.youkuaiyun.com/github_39325328/article/details/77533906Eclipse debug启动老是跳转到断点,提示SilentExitException。出现这种状况是因为Eclipse默认开启挂起未捕获的异常(Suspend execution on uncaught exceptions),只要关闭此项就可以了。解...
2019-03-21 16:35:37
964
原创 SQL语句的执行顺序
sql执行顺序(1) from(2) on(3) join(4) where(5) group by(6) avg,sum....(7) having(8) select(9) distinct(10) order by(11) limit从这个顺序中我们不难发现,所有的 查询语句都是从from开始执行的,在执行过程中,每个步骤都会为下一个步骤生成一个虚拟表,这个虚拟表将作...
2019-03-20 11:11:03
198
原创 解决第三方接口所需token的持久化问题
场景:调用深信服虚拟机平台提供的接口获取虚拟机信息,以及调用操作虚拟机接口完成相关业务需求。问题:每次在调用操作虚拟机相关的接口都要先行获取深信服虚拟机平台提供的token,相当于每次调用一个接口都要先调用获取token的接口。解决方案:解决调用第三方接口所需token的持久化问题,以避免每次调用接口都要先去调用第三方的获取token和ticket的接口:1.数据库:通过第三...
2019-03-13 15:11:33
5426
转载 项目引入第三方jar包,将第三方jar包安装本地仓库
将第三方jar包安装到本地仓库:mvn install:install-file -Dfile=lucene-queryparser-4.6.1.jar(这是jar名称和后缀名) -DgroupId=org.apache.lucene(这是pom的groupId) -DartifactId=lucene-queryparser(这是pom的groupId) -Dversion=4.6...
2019-03-04 16:24:31
363
转载 TCP粘包现象
转载:https://www.cnblogs.com/qiaoconglovelife/p/5733247.html1 什么是粘包现象 TCP粘包是指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。2 为什么出现粘包现象 (1)发送方原因 我们知道,TCP默认会使用Nagle算法。而Nagle算法主要做两件事:1)只有上一...
2019-03-04 15:29:17
490
转载 JAVA实现AES加密、解密
什么是AES?高级加密标准(英语:Advanced Encryption Standard,缩写:AES),是一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。那么为什么原来的DES会被取代呢,,原因就在于其使用56位密钥,比较容易被破解。而AES可以使用128、192、和256位密钥,并且用128位分组加密和解密数据,相对来说安全很多。完善的加密算法在理论...
2019-02-18 10:04:28
38073
7
转载 springboot前端传参date类型后台处理方式
参考如下博客:https://www.jianshu.com/p/ebe9087b9078https://blog.youkuaiyun.com/xiangluer/article/details/819131371、针对json格式:在配置文件中加以下配置 spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson....
2019-01-28 09:52:08
2794
转载 数据库设计"三大范式"
为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。第一范式:第一范式(1NF)要求数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值。 若某一列有多个值,可以将该列单独拆分成一个实体,新实体和原实体间是一对多的关系。 在任何一个关系数...
2019-01-04 11:22:14
287
原创 "排序算法"帖
由一次腾讯校招面试题,引发的排序算法整理(不全,仅供自己参考)。算法题内容如下:************************************************************************************************************春节期间小明使用微信收到很多个红包,非常开心.在查看领红包记录时发现,某个红包金额出现的次数...
2018-12-26 15:43:20
267
mysql5.7.25安装手册.docx
2019-07-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人