- 博客(36)
- 资源 (3)
- 收藏
- 关注
原创 ES使用笔记,聚合分组后再分页,探索性能优化问题
再构建聚合时,使用了TermsAggregationBuilder类,其中两个参数size和shardSize,这两个参数可以优化性能,如果不设置的话,ES默认size=10,shardSize也是10,在Elasticsearch的terms聚合中,size和shard_size参数用于控制聚合结果的数量和分片级别的聚合结果数量。shard_size:作用:控制每个分片返回的分组数量。分片5:返回供应商O1,P1,Q1,R1,S1,T1,U1,V1,W1,X1。
2025-01-20 14:30:35
1001
原创 srping2.0+升级到spring3.0+遇到的问题,es部分记录一下
最近公司项目,在做版本升级,首先srping2.0+升级到spring3.0+,目前无漏洞版本是springBoot3.2.12+springClould2023.0.3,升级完spring,紧接着升级es,原来我们使用的es客户端版本是7.9.3,升级到无漏洞版本是7.17.23。我升级客户端到7.17.23版本后,es中的有些类的包名改了,要修改,其余也没什么,项目启动后可以链接到es服务,执行语句包括:查询,插入,聚合都没有问题,然后就发版上线了,结果坑就在这等着我呢。
2024-12-17 15:48:58
1174
原创 使用java类,实现发邮件的功能
是对文件名,进项编码,防止文件中文乱码出现,不过我在使用163邮箱发送的时候,并没有出现这个情况,不知道别的邮箱,会不会出现,备用吧!prepareMessageWithAttachments方法设置了两个参数String[] filePaths,Map<String, String> files。prot端口号,我使用的465,一个这个端口号,是需要使用ssl加密的,而且protocol,也要使用smtps,然后要去163邮箱开通smtp端口,或者qq邮箱,根据各邮箱情况,自己开通获取授权码。
2024-10-17 15:35:14
265
原创 记录一下vue-quill-editor(富文本框)禁用粘贴图片
虽然,我没写过vue,但是大致能懂,设置了一个监听事件,如果粘贴的对象时文件,则阻止,前端小伙伴也是这个写的,监听事件也执行了,逻辑走到了if里,但是e.preventDefault()没有生效。我有查了大量e.preventDefault();没有生效的方案,试了,没啥作用,分析了一下原因,大致这几种。解决方案1和2,我没找到对应的解决办法,直接放弃,接着让前端小伙伴试着把。
2024-09-23 16:16:44
545
原创 自定义注解+拦截器+多线程,实现字典值的翻译
上一篇,自定义注解+拦截器,实现字段加解密操作,奈何公司的这个项目里没有字典值翻译的功能,正好可以再自定义注解+拦截器方式的基础上,扩展一下。
2024-08-27 20:10:14
264
原创 自定义注解,实现字段加密解密
注意的AES算法的密钥长度, 必须是 128 位(16 字节)、192 位(24 字节)或 256 位(32 字节)根据业务需求,要求多部分字段,进行加解密,想到实现方式,就是通过自定义的注解+AOP来实现。首先新建一个注解,注意ElementType.FIELD类型,说明这个注解只能作用在字段上。下一步创建这个切面类的实现类,用来实现一些方法,比如:具体的加解密算法。这个类中定义了切面,包含所有的实现类,以及实现类中所有的方法。本加密算法采用的是AES。
2024-08-22 16:45:18
328
原创 记录一下transfer-encoding chunked , Transfer-Encoding 的作用
这对于大文件或长时间运行的响应非常有用,因为它允许客户端在接收到部分响应时就开始处理它,而不需要等待整个响应完成。每个chunk都有一个头部,用于指示其大小,然后是一个回车换行(CRLF)分隔符,接着是chunk的实际数据,最后再加上一个CRLF分隔符。当接收到响应时,客户端会按照这个列表中的顺序查找支持的编码方式,并选择第一个支持的方式来解码响应数据。如果客户端不支持任何列出的编码方式,那么它必须放弃解码响应,或者如果有其他备选方式,可以尝试使用备选方式。
2024-07-17 10:48:41
577
原创 从post请求体中获取请求参数的值
HttpServletRequest使用getInputStream()与getReader()获取输入流因为读取时数据流指针的单向移动导致请求的body内容只可读取一次。但是,现在项目大多设置了拦截器,过滤器,可能导致流已经被读取了,那么下次再去读的时候,就是空的了。如果是采用 form 表单的形式, 可以通过 getParameter 获取参数的值.那么如果 body 是按照 JSON 的格式来传递, 那么通过 getParameter 就获取不到参数的值了!
2023-09-22 18:05:34
4549
原创 使用UncaughtExceptionHandler进行未知异常得捕获
Thread的run方法是不抛出任何检查型异常(checked exception)的,但是它自身却可能因为一个异常而被终止,导致这个线程的终结。catch也无法截获,因此可能导致一些问题出现,比如异常的时候无法回收一些系统资源,或者没有关闭当前的连接等等。可以看到这2个变量,需要注意到区别,defaultUncaughtExceptionHandler是静态的,我们可以调用此方法设置所有线程对象的异常处理器,而uncaughtExceptionHandler则是针对单个线程对象的异常处理器。
2023-04-17 14:57:30
338
原创 Zipkin链路追踪
Zipkin 是 Twitter 的一个开源项目,它基于 Google Dapper 实现,它致力于收集服务的定时数据,以 解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。
2023-03-16 17:21:19
716
原创 EsayExcel技术分享
一.什么是EsayExcelEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。github地址:GitHub - alibaba/easyexcel: 快速、简洁、解决大文件内存溢出的java处理Excel工具 为什么选用EsayExcel Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以...
2022-05-16 15:32:29
3627
原创 DateUtils工具类
public class DateUtils { public static Logger log = Logger.getLogger(DateUtils.class); public static int YEAR = 1; public static int MONTH = 2; public static int DATE = 3; public static final String defaultDateFormat = "yyyy-MM-dd";
2022-03-11 10:28:28
601
原创 Calendar类根据指定日期获取年,季度,月
在这里插入代码片Date dateStr=new Date ();//本月第一天 Date fristdata=getTimesMonthmorning(dateStr); String fristdatastr=DateUtils.getDatatoString(fristdata); System.out.println(fristdatastr); //本月最后一天 Date lostdata=getTimesMonthnight(dateStr); String lost
2022-01-21 14:38:02
2409
2
原创 jsp页面使用webcam,获取照片
使用js调取摄像头,并获取照片,有两种方法一种是H5适用于谷歌,一种是利用webcam适用于ie1利用webcam,获取照片<!doctype html><html><head><#include "/include/meta.inc"> <script src="${springMacroRequestContext.contextPath}/js/jscam/jquery-1.7.1.js"></script>
2021-11-04 17:57:57
826
原创 jdk8.0特性stream过滤list< Map>型取差集
1.list< Map>型取差集 Map<String,Object> map1=new HashMap<String,Object>(); map1.put("lrdw_qzxzhqh","1"); map1.put("lrdw_qzsxh","2"); Map<String,Object> map2=new HashMap<String,Object>(); map2.put(
2021-05-26 13:42:52
877
原创 父页面传低数组到子弹窗,不用cookie,session
//父页面 function getTzlist(){ var tzList={1,2,3} return tzList; } //子弹窗 var tzList=window.opener.getTzlist(); console.log(tzList);
2020-12-10 14:15:00
146
原创 js弹出弹窗,并从弹窗中取值,返回父页面
//弹出弹框 url="${pageContext.request.contextPath}/facegl/eyecool/eyecool.jsp?pqdwbmid="+pqdwbmid+"&rytype="+rytype; open_win = window.open(url, "pgzprint", "height=550,width=700,top=250,left=600,status=yes,toolbar=no,menubar=no,location=no,scrollbars=ye
2020-12-09 14:06:24
1153
1
原创 使用jquery解析XML的方法,很简单
尽量使用高版本的的jquery,有的jquery版本会报没有parseXML属性的错误我用的jquery-1.7.2.min.jsxml文件格式<?xml version="1.0"?><returnMsg><resultCode>0</resultCode><resultMsg>成功</resultMsg></returnMsg> //解析xml文件 function xmlParse(str){
2020-12-09 11:17:46
343
原创 循环遍历本地的图片使用BASE64编码,并在ajax也遍历图片
前端调用ajax到后端去图片的方法,并返回 public void search(HttpServletRequest request, HttpServletResponse response) throws Exception { String path="D://alarmImages"; int fileNum = 0, folderNum = 0; File file = new File(path); List fileList=new
2020-12-02 09:26:42
219
原创 利用输出流,生成并在在本地保存图片
import java.text.SimpleDateFormat; import java.util.Date; import java.io.File; import javax.imageio.stream.FileImageOutputStream; byte[] ry_zp = (byte[])blob.get("ry_zp");//数据库图片已bolb类型存储,取出来后转成byte数组 Date date = new Date(); String...
2020-11-30 13:49:19
755
原创 jsp利用cookie实现记住账号,密码
这个功能很简单,不过,因为太简单,所以不是很安全,后续可以引MD5对账号密码进行加密好了废话不多说,上代码1引入cookie.js<script src="${pageContext.request.contextPath }/js/dpjs/jquery.cookie.js"></script>2.复选框。默认选中的,你也可以改为false<input type="checkbox" checked="true" id="checkboxinfo" >3
2020-09-18 15:54:03
820
1
原创 nginx代理配置两个前端,共用一个后端
找到你的nginx 配置文件 find / -name nginx.conf (一般是在/conf.d/nginx.conf里配置)需要添加一个端口把配置文件替换成修改后的 ./nginx -t 检查是否有错重启配置文件 ./nginx -s reload检查防火墙 systemctl status firewalld开放刚才你配置的端口 firewall-cmd --zone=public --add-port=10000/tcp --permanent..
2020-07-23 17:56:50
4256
原创 使用net.sf.json.JSONObject类解析json文件
解析json的类有很多,fastjson,net.json,等fastjson1.2以下的版本会出现不能解析某些字符的情况,报错异常是java.lang.ArrayIndexOutOfBoundsException: 160这时候换成高版本jar就可以了使用net.json解析 JSONObject jsonObject=JSONObject.fromObject(res); JSONObject data=jsonObject.getJSONObject("data");
2020-07-03 14:11:09
1301
原创 简单的读写文件方法
经常会遇到需要读写文件,分享一个简单的小方法1读文件`//读文件解析乱码 private String readFile()throws IOException { String path = "C:\\Users\\jadl\\Desktop\\test.txt"; File f = new File(path); FileInputStream fip = new FileInputStream(f); InputStreamReader reader = new Inp
2020-07-03 09:41:53
500
原创 使用jsp快速生成动态验证码
在设计登录界面时验证码是必不可少,本实例将简单的生成动态验证码。根据个人需求将生成验证码代码放到不同的的地方,可以放到前段控制器中通过请求方式生成验证码,也可已将代码放到一个JSP页面通过应用JSP页面生成验证码工具:J2EE通过jsp生成验证码<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@page import="java.awt.imag
2020-06-10 16:36:18
1048
1
原创 解决window.close()方法无效
window.close(),在谷歌和火狐浏览器,会出现无法突出页面的情况,而我的方法也不是退出的页面的方法,而是偷梁换柱,对页面进行跳转了function exit(){ if(confirm("确定要退出吗?")){ var browsername=navigator.appName; if(browsername="Netscape"){ window.location.href=("../tLoginAdmin.jsp");
2020-06-10 15:18:34
5577
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人