- 博客(22)
- 收藏
- 关注
原创 Apache Atlas源码跟踪-entity的relationship属性逻辑删除问题
Apache Atlas源码跟踪之entity的relationship属性逻辑删除问题
2022-04-01 18:08:40
915
原创 Apache Atlas 源码跟踪和修改- entity的relationship查询无序问题
Apache Atlas源码跟踪和修改之entity实体的relationship属性数据无序问题
2022-03-27 23:10:36
1013
原创 fastjson转化入参字符串的特殊字段名$ref问题
一、问题描述{ "schema": { "originalRef": "Result«object»", "$ref": "#/definitions/Result«object»" }}入参字符串是json格式,可直接转为JSONObject,由于某个字段是$ref,导致调用fastjson的JSON.parseObject(String text)方法出现问题。1、问题一:$ref在第一个字段,转化api报错:com.alibaba.fastj
2021-10-25 18:11:49
1466
原创 java硬件对接经验总结
一、问题描述项目现场需要对接硬件,机缘巧合下派我出差对接。暂定要对接读卡器和通道门两个硬件。难点描述:1、业务流程不清楚、数据流转来源和去向未确定,不知从何下手;2、时间和学习成本高;3、基本知识不懂,和硬件厂家沟通比较慢;4、部署调试、数据交互方案设计;总结一下就是之前没有过硬件对接经验和现场业务流程不熟悉。二、解决思路1、厂家有提供他们的说明文档,先把文档大致看下,然后再和厂家沟通;2、业务和数据流转和现场的负责人沟通;总结一下就是:不耻下问,明白自己要做什么之后再动手去做。3、
2021-03-25 20:22:02
11410
9
原创 nacos-server-1.4.0的CPU飙升问题排查(nacos-discovery时间配置问题)
一、问题描述最近公司的注册中心要切换为nacos,部分项目切换的两三天后,我上到nacos-server的服务器,使用cd命令,报错(当时没截图,凑活看下吧):①No space left on device②Free disk space below threshold. Available: 0 bytes服务器的磁盘空间居然不足了?!二、解决思路1、先看下服务器磁盘情况当时没截图,凑活看吧,Used是428G,全满了。2、哪些东西占满了磁盘这才过了两三天(有个周末),怎么磁盘突然满
2021-02-04 19:44:46
2581
1
原创 SQLHelper+kingbase分页问题
一、问题描述同事项目使用的kingbase数据库,使用SQLHelper分页的时候pageNum>=2返回错误的数据。由于我之前的项目用过kingbase,再加上SQLHelper是框架引入的依赖,所以就交给我来排查了(这应该是我第二次排查SQLHelper的问题了,滑稽)。二、解决思路从sql参数打印情况来看,limit=pageNum * pageSize,正确情况应该是limit=pageSize。问题原因只能debug排查了1、找到计算limit的代码package:com.jn.s
2021-02-04 16:25:45
1038
原创 nacos-discovery和websocket依赖兼容问题,导致NacosWatch获取错误的TaskScheduler
一、问题描述nacos作为注册中心,项目的服务发现依赖和websocket依赖
2021-01-30 17:48:44
3121
2
原创 记一次压测下的OOM排查
一、问题描述项目现场压测登陆接口,说并发30左右服务就会卡死。由于现场不能通过外网远程连接,只能本地复现下(配置文件、项目版本、启动参数等都保持一致)。压测工具:jemeter压测功能:登陆接口问题简述:并发30,后端出现OOM。二、解决思路没想到居然真的复现了,既然是排查OOM,就用java自带的VisualVM工具吧,需要初步排查是哪些对象占用了堆内存。1、使用VisualVM排查jvm内存:(1)目录在C:\Program Files\Java\jdk1.8.0_144\bin下,有
2021-01-28 15:20:16
492
1
原创 Nacos页面实现API接口文档(swagger)效果
一.问题描述公司的微服务项目之前适配nacos只是用来读取配置文件(nacos的配置文件的页面确实更友好、简洁),最近需要把注册中心从eureka切换到nacos。但是有一个问题,nacos是不支持eureka的swagger页面跳转的,所以这个博客就是提供一个比较简便的解决思路:springcloud项目使用nacos作为注册中心,如何实现eureka的API接口文档(swagger)跳转效果。注意:本博客非nacos使用教程,没有用过nacos的小伙伴戳这里先了解下:nacos官方文档二.解决思路
2020-12-31 14:45:09
5453
4
原创 springboot2.X自定义静态资源映射
一.问题描述前端请求/下载图片和文件二.解决思路1、后端提供接口,将图片/文件以流形式返回给前端,太麻烦 ×2、后端做映射,前端直接通过ip:port的方式访问,简单明了 √三.解决方案1、实现WebMvcConfigurer自定义配置映射路径(推荐,兼容性好):@Configurationpublic class ResourceConfiguration implements WebMvcConfigurer { @Override public void add
2020-11-04 21:03:28
432
原创 sqlhelper集成dynamic多数据源的分页问题(非教学向)
一.问题描述最近接手(顶锅)了公司的框架维护工作,第一项任务就是集成dynamic多数据源框架。(dynamic官方使用文档,本文不是教学,有兴趣的小伙伴可以自己查阅文档)。集成dynamic之后,一切都很顺利,但是测试到SQLHelper框架的分页功能,出错了:SQLHelper分页功能,全部是按照dynamic指定的primary数据源来处理分页sql的。...
2020-10-24 20:28:33
1086
2
原创 双亲委派机制简单运用和工具类获取配置文件属性
一.问题描述最近项目需要对接其他公司的接口(SDK方式对接),SDK接入时需要特定的四个配置属性,该配置属性通过web.xml获取。在自己电脑调试通过之后,jar部署到服务器后发现无法正确读取到web.xml的内容。由于没有日志的打印,所以不知道是因为路径不对还是什么原因导致无法正确读取web.xml(web.xml内容的读取代码在SDK依赖中)。于是只好自己本地覆盖依赖类,加上路径的日志打印。经过一番操作之后,发现打印的路径有问题,然后修改代码获取正确的路径还是无法读取web.xml。无奈,只能将四个
2020-08-07 17:36:44
200
原创 条件化配置注解@ConditionalOnProperty
问题描述由于业务原因,公司的login登录包有两个,一个是普通的登录包(简称normal-login),一个是证书登录包(简称abnormal-login,用到https)。代码层面,这两个login包业务代码完全一样,唯一不同的是abnormal-login多了两个配置实例(配置文件方面就不提了,不是重点)。这就导致了,如果normal-login的代码有任何改动(增删接口、代码逻辑修改等)就要同步到abnormal-login包。这样感觉很冗余,而且代码都一样,整个包的代码都在飘黄线,看起来难受。趁
2020-05-20 18:28:28
2444
原创 构造方法中使用@value注入配置属性的成员变量,获取的值为null
问题描述构造方法中使用@value注入配置属性的成员变量,获取的值为null启动时控制台输出原因猜想java调用构造方法时属性未初始化面向百度开发,找到了一句“程序会先执行构造函数,然后再为@Value修饰的成员变量注入配置值。因此,执行构造函数的时候,配置项的值一直为null”解决方案一、@PostConstruct注解该注解在构造函数之后执行,那么就是说在该注解声明的方法中,所有属性都是初始化后的重启项目:注意:该注解修饰的方法,返回值没有限制,但是一般该注解只是用于初始化
2020-05-11 16:29:45
1784
原创 nginx代理转发导致header带下划线参数名丢失
nginx代理转发导致header参数丢失问题描述原因猜想问题解决萌新发言,不喜勿喷,欢迎大佬们指出不当之处问题描述使用nginx代理转发A项目的时候,调用nginx,发现A项目报错,header中参数丢失(过滤器拦截,有提示缺失的参数)原因猜想因为其他项目也是走的nginx代理转发,header中的参数并没有丢失的情况,然后对比下A项目和其他正常的项目的参数,发现A项目丢失的参数都是带有...
2020-04-27 10:15:59
929
原创 ORACLE和MYSQL一些函数和实现效果的对比、替换
工作中用到了oracle和mysql,所以如果sql有差异性就要提供两套。这篇文章来总结下oracle和mysql函数之间的区别、是否可替换。一.Oracle的with x AS (子查询), y AS (子查询)…这个语法很简单,可以认为是先创建了一(多)个临时结果集,再在后面使用这些结果集操作。其实就是公用表表达式(CTE)WITH A AS(SELECT USER_NAME,OFFI...
2019-12-06 19:22:46
1090
1
原创 Druid连接池,相同ip和port的数据源获取conn的小坑
前提背景:项目前端可选择不同数据库下不同数据源的某张表来查询数据(具体业务暂且不提,知道是前端查询数据库数据即可),所以后端代码中使用到了conn连接池的技术,提高查询效率。DruidUtil存放conn是map,key为数据源实体的id,value就是conn。这是数据源实体,注意id是什么:public class Datasource extends DataBase implemen...
2019-10-13 16:08:04
674
原创 JAXB读取sql.xml的用法以及从yml读取配置属性的用法
项目中用到了从sql.xml中获取sql语句模板并且根据前端参数配合yml配置参数将处理后的参数封装到模板形成完整sql后发送到数据库查询的用法,写这篇博客想与大家分享一下JAXB的用法和从yml读取配置的用法。一.读取yml配置文件中的配置属性:yml文件有如下配置:myConfig: name: xiaoming age: 18 sex: 1 socre: 100获取...
2019-07-24 15:38:07
539
2
原创 Java--Stream的两个小用法(去重+map排序)
分享两个jdk1.8中stream的小技巧一.stream去重:1.List元素是基本类型的包装类List<String> list= Arrays.asList("Xiaoming","Xiaohong","Xiaogang","Xiaoming"); list.stream().distinct().forEach(e-> System.out.println(e)...
2019-07-16 11:29:46
6894
2
原创 impala--将一列多行数据合并到一行一列中
工作中遇到一个需求,前端传入参数peopleid(s),根据这个(些)参数去hive中查询旅馆,需要返回一个success字段,代表这些参数中查询有结果的个数。问题在于如何确定哪个peopleid在哪个旅馆住过?一、问题分析:假设前端传入两个id,id1和id2,通过查询返回结果两个旅馆lg1和lg2,①id1两个旅馆都住过,id2都没住过,那么success就是1。②id1住过lg1,id2...
2019-07-12 16:00:36
10509
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人