开发小技巧
光咣1992
一位Java熟练工
展开
-
ES给索引添加字段属性,并更新属性的值
URL:http://10.251.96.69:9200/pro_channel_store_product_v2/_mapping/doc请求类型:PUT请求体:{ "properties": { "deliveryType": { "type": "long" } }}说明:pro_channel_store_product_v2是一个索引...原创 2019-12-04 15:51:26 · 6746 阅读 · 2 评论 -
Java代码提高可读性的一点小体会
优化前的代码:/** * 是否属于生鲜商品 * 基础 转标 组合 三种商品的子商品的单位都得是 KG 或者 斤 * @param itemList * @return */ private Boolean isFresh(List<ReqProductCombinedItemVO> itemList) { ...原创 2019-09-16 18:14:59 · 513 阅读 · 0 评论 -
MySql使用case when then end where 关键字执行批量更新(batchUpdate)时的避坑指南
前一段做一个批量更新的需求,数据的来源是一个Excel文件,列有值的话,就更新,没值的话,就忽略。首先可以使用mybatis-plus的com.baomidou.mybatisplus.extension.service包下的IService接口里面的批量方法但它的实现原理是伪批量,所以我参照系统中之前的批量更新写法,写了一个Mysql自带的批量更新,Map.xml中的代码如下:&l...原创 2019-09-12 16:48:28 · 1949 阅读 · 0 评论 -
org.apache.commons.lang3包下的StringUtils工具类学习札记
很多方法的入参都是CharSequence接口,该接口下有:CharBuffer , Segment , String , StringBuffer , StringBuilder五个实现类字符数组中任意一个元素的值为空,就返回truepublic static boolean isAnyEmpty(final CharSequence... css)字符是否是空白,包括白板,\r...原创 2019-08-27 10:15:08 · 571 阅读 · 0 评论 -
ES查询,大查询分拆成若干小查询时,查询出重复数据的问题
最近在做在线商品池导出Excel功能的时候,遇到一个有意思的问题。我这需要导出的数据,是从ES索引库中取出的,而从ES中查询数据,有个问题就是一次查询的数据量最好不要超过1W条,否则ES容易报错,我这边的实验结果是1.7W的时候一准报错。但用户想到导出的数据,count通常都在好几万,那该怎么办呢?于是需要利用ES查询时的 from to,分批次去查询在用户有输入查询条件的...原创 2019-08-22 10:29:26 · 2434 阅读 · 2 评论 -
Idea编辑代码时内存飙升,卡的没法用问题的解决方案
目前分析是阿里巴巴P3C插件,实时检测功能导致的,右键关闭实时检测,效果得观察原创 2019-08-19 11:24:08 · 4071 阅读 · 8 评论 -
使用丝袜哥(swagger)postman测试文件下载接口遇到的中文乱码问题,坑!
今天周日,处理了一个下载Excel文件的小需求,代码很简单,往response里的输出流response.getOutputStream()写入数据,就完了。但在测试时,使用postman测试,文件名中的中文部分乱码,使用swagger测试,不光文件名中文乱码,连内容都是乱码的!!!!!!本来,下载文件接口使用get请求就行了,但我这的项目,为了前端能把请求参数封装为一个结构体,都是...原创 2019-08-04 20:20:10 · 8975 阅读 · 2 评论 -
ES服务器和客户端版本不一致导致的match查询报错:does not support [auto_generate_synonyms_phrase_query]的解决方案
最近在用开发?ES查询,遇到一个错误,错误信息如下:ElasticsearchStatusException[Elasticsearch exception [type=parsing_exception, reason=[match] query does not support [auto_generate_synonyms_phrase_query]]] at org.elast...原创 2019-08-02 21:56:37 · 11583 阅读 · 3 评论 -
notepad++快速在每行头尾都加上指定的内容
使用快捷键Ctrl+H打开“替换对话框”,在每行的开头添加内容。勾选左下角的“正则表达式”选项(注意一定要记得勾选)在“查找目标”里输入上尖号“^”,上尖号代表每行的开头在“替换为”里输入“(需要添加的内容)”然后点"全部替换"按钮,这样每行的前面就全部添加了(需要添加的内容)在“查找目标”里输入美元符号“$”,美元符号代表每行的结尾在“替换为”里输入“(需要添...转载 2019-05-31 15:40:29 · 3873 阅读 · 0 评论