- 博客(71)
- 收藏
- 关注
原创 如何优雅的使用进行参数校验
log.error("参数错误:{}",item.getDefaultMessage());3、还有一种就是在参数后面加一个 BindingResult对象(不推荐 耦合度太高)String msg2 = "不能为null";在spring里面有一个注解 @Validated。String msg1 = "不能为空";然后进行报错拦截即可,拦截方式有多种。可以在方法的入参里面这样写。1、直接在切面进行拦截。2、进行自定义异常处理。
2025-08-09 20:15:40
816
原创 Linux-Centos7.9 单机版安装es&kibana
因为es在4.0版本后不允许root去启动es所以这里要创建个用户,包括以后执行也要用这个用户。切换到制定目录这里我的目录用的是 /data/elasticsearch。编辑 /etc/security/limits.conf,追加以下内容;此文件修改后需要重新登录用户,才会生效。三、修改jvm内存以及配置文件。
2025-06-08 21:39:39
389
原创 解决Docker在pull的时候报错Get https://registry-1.docker.io/v2/: net/http: request canceled (Client.Timeout e
这个问题通常是由于网络连接问题或镜像源访问受限导致的。以下是详细的解决方法。能够正常访问互联网,可以尝试使用以下命令测试网络连接。如果网络连接存在问题,请先修复网络。编辑Docker的配置文件。
2025-06-02 22:23:41
473
原创 安装Docker&Docker-Compose
1、换掉关键文件▽[base]gpgcheck=1enabled=1[updates]gpgcheck=1enabled=1[extras]gpgcheck=1enabled=1gpgcheck=1enabled=02、运行以下命令,安装Docker。3、执行以下命令,检查Docker是否安装成功。
2025-06-02 21:37:30
714
原创 ES查询速度为什么快
而且Elasticsearch直接通过内存查找term,不读磁盘,但是如果term特别多的话,term dictionary也会很大,将所有的term dictionary都缓存到内存里是不太现实的。通过posting list这种索引方式似乎可以很快进行查找,比如要找age=24的同学,很快就会找到,id是1,4的同学。缓存所有的term index到内存里是可以的。Term Index,就像字典里的索引页一样,A开头的有哪些term,分别在哪页,可以理解term index是一颗树。
2025-01-16 15:26:03
260
原创 关于解决线上问题ES内存直接打满的问题
(示例:POST /_tasks/f4sEMLgVQ-CcaWvxsh3PwA:2991912181/_cancel )若集群问题没有恢复,联系运维执行并发度100%强制重启操作(执行时间需要30分钟左右)查询结果默认按耗时倒序,请根据耗时和api的请求类型过滤出需要进行清理的任务ID(下称:task_id)集群恢复正常后,重复执行第一步和第二步操作,定位异常任务进行清理。二、查看任务DSL语句(定位问题)一、排查执行任务(定位问题)三、清理缓存(快速处理方法)四、清理任务(根本处理方法)
2025-01-08 13:58:42
613
原创 PageHapper分页失效的问题
当代码这样写的时候 pageNum为1PageSize为50的时候没有问题,但是当pageNum为0的时候sql就会只执行查询total的sql而不会执行查询分页的sql。今天写代码碰到个特别有意思的问题,就是PageHapper分页失效的问题。希望广大网友来避避坑。
2024-12-03 17:28:08
236
原创 Mysql相关面试题
12. Extra:表示其他额外的信息,包括Using index、Using filesort、Using temporary等。5. type: 表示查询时所使用的索引类型,包括ALL、index、range、ref、eq_ref、const等。11. filtered: 表示此操作过滤掉的行数占扫描行数的百分比。10. rows: 表示此操作需要扫描的行数,即扫描表中多少行才能得到结果。索引的长度越短,查询时的效率越高。时候,一次explain中的多条记录的id是相同的。会影响查询的执行效率。
2024-07-23 11:20:24
255
2
原创 Spring相关的面试题
在Bean初始化之前,允许自定义的BeanPostProcessor对Bean实例进行处理,如修改Bean的状态。AbstractAutowireCapableBeanFactory 的入口处,doCreateBean的核心代码如下,其中包含了实例化、设置属性值、初始化Bean以及注册销毁回调的几个核心方法。如果Bean在配置文件中定义了初始化方法,那么该方法会被调用。如果Bean实现了DisposableBean接口或在Bean定义中指定了自定义的销毁方法,Spring容器会为这些。
2024-07-11 14:39:12
598
原创 常用的JVM启动参数
JVM的启动参数有很多,但是我们平常能用上的并不是特别多,这里介绍几个我们常用的:1. 堆设置:。-Xms:设置堆的初始大小。。.-Xmx:设置堆的最大大小。2. 栈设置:。-XsS:设置每个线程的栈大小。3. 垃圾回收器设置:• -XX:+UseG1GC:使用 G1 垃圾回收器。• -XX:+UseParallelGC: 使用并行垃圾回收器。4. 性能调优:VJava 8 和 Java 11的GC有什么区别?。
2024-07-10 21:02:56
408
原创 Aes对称加密
System.out.println("加密后的内容为:" + encryContent);System.out.println("解密后的内容为:" + decryContent);System.out.println("原内容为:" + content);System.out.println("加密解密试试:");
2024-07-10 15:44:48
454
原创 jmeter压测配置
压测结束后,PTS 将汇总监控数据形成压测报告。用户根据压测报告分析评估系统性能是否符合要求,如 RPS、成功率和 RT(响应时间)是否符合期望, 并可辅助用户排查分析业务系统性能瓶颈。压测报告页面可查询历史压测报告列表。点击。
2024-07-08 16:42:23
1266
原创 时间复杂度与空间复杂度
for(i=1;i<=n;i<=n;j<=n;j++) {a++;第一个for循环的时间复杂度为o(n),第二个for循环时间复杂度为o(n^2),则整个算法的时间复杂度为o(n^2+n)。o(1)表示基本语句的执行次数是一个常数,一般来说,只要算法中不存在循环语句,时间复杂度就为o(1)。
2024-06-17 21:27:29
498
原创 java设计原则
定义:类,模块,函数对扩展开放对修改关闭。如工厂模式对扩展开放:模块对扩展开放就意味着,当需求变化时,可以对模块进行扩展,使其满足具有新需求的功能,
2024-06-17 20:36:05
369
原创 工厂模式、、、
*** 初始化注入对象*/@Service@Slf4j@Resource/*** 初始化service到map key为设置的*/= null){=null)});/*** 获取服务*/
2024-06-17 19:52:00
889
原创 DDD总结
将实体和引起实体发生变化的方法放入实体中这种就叫做充血模型列子/*** 扩展信息*//*** 得到发奖原因描述* @return*/= null) {/*** 得到发奖原因描述* @return*/= null) {
2024-06-16 00:49:52
905
原创 vue整合Echarts
我这里就是直接访问后端的一个方法 然后把这个方法放入create生命周期。进入Echars官网找到自己想要的图形我这里选择的是柱形图。写个方法 就是cv过来的 然后改成后端传过来的值。下载Echars的npm。点开完整代码直接cv大法。在vue里面挂在个div。
2024-04-22 19:28:20
392
原创 java常见面试题
Minor GC 主要针对新生代(Young Generation)进行垃圾回收。在新生代中,对象的生命周期比较短暂,因此垃圾收集频率相对较高。Minor GC 的主要目标是清理新生代中的无用对象,并将存活的对象移动到老年代(Old Generation)或者幸存区(Survivor Space)。Major GC 主要针对老年代进行垃圾回收。在老年代中,对象的生命周期较长,因此垃圾收集的频率相对较低。Major GC 的主要目标是清理老年代中的无用对象,以避免老年代空间的耗尽。
2024-04-15 15:31:10
693
原创 mysql报错-mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止和数据恢复
删除你的服务(此处mysql对应你的服务名称,我的服务名就是mysql)mysql8版本叫mysql80。注:此处的mysql是你将要生成的服务名称,D:\softinstall\mysql-8.0.18-winx64\my.ini要改成你自己的ini文件的位置)第三步:初始化(第一次执行的话,时间会久一些,执行结束后没有输出信息,查看bin的同级目录下会多出一个data文件夹,里面一堆文件)下的data文件夹删除(如果有需要,请一定要备份,因为这里面有你建的数据库!# 设置mysql的安装目录。
2024-04-15 08:32:34
4580
原创 Docker启动安装nacos(详情讲解,全网最细)
v /mydata/nacos/logs/:/home/nacos/logs : 将容器的/home/nacos/logs目录挂载到 /mydata/nacos/logs。-v /mydata/nacos/conf/:/home/nacos/conf/: 将容器的/home/nacos/conf目录挂载到 /mydata/nacos/conf。-p 8848:8848 -p 9848:9848 -p 9849:9849 : 指定端口映射,注意这里的p不能大写,大写是随机端口映射。
2024-03-21 20:42:27
1670
原创 es配置elk实现增量同步以及全量同步
然后执行 /opt/logstash-7.9.3/bin/logstash -f /opt/logstash-7.9.3/config/jdbc.conf。优点 可以实时监控mysql来更新更新es数据。缺点 需要定期清理日志文件。
2024-03-12 15:25:25
921
原创 java后端修改日期格式
第一步继承WebMvcConfigurationSupport类。有了他再也不用加@JsonFormat了。在定义一个对象转换器。
2024-03-11 19:59:06
520
原创 Docker安装主从数据库
首先开启docker后直接执行命令默认情况下MySQL的binlog日志是自动开启的,可以通过如下配置定义一些可选配置配置如下内容,注意和新配置只有三行,其他配置可根据实际情况选用。
2024-03-08 18:03:07
1073
原创 idea 连接docker
在ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock。systemctl daemon-reload && systemctl start docker 重新加载配置和启动docker。systemctl stop docker.socket 停掉docker。后面加上 -H tcp://0.0.0.0:2375。idea 连接docker步骤。修改docker配置。
2024-01-20 10:15:26
713
原创 docker安装 mysql 8.0.32
首先下载 mysql 其次如果虚拟机以前安过mysql 需要把mysql关闭命令 永久关闭mysql 但是当前不生效 需要重启虚拟机 systemctl enable mysqld如果不想重启虚拟机 可以执行 systemctl stop mysqld//指定版本// 拉取最新的mysql二、查看镜像三、创建要挂载的文件夹# 拷贝一份配置文件,先随便启动一个镜像# 启动成功后,进入容器内部拷贝配置文件,到宿主主机。
2024-01-19 21:54:06
1782
1
原创 虚拟机下载docker
3,那么容器就是由Docker镜像创建的运行实例,类似于虚拟机,容器之间是相互隔离的,包含特定的应用及其所需的依赖文件(好比每个英雄都是隔离的,都有自己的皮肤,技能以及走的路线)。2,所谓镜像就是构建容器的源代码,是一个只读的模板,由一层一层的文件系统组成的,类似于虚拟机的镜像(英雄也是只读的,有自己的技能被动,你也不能进行操作)。6,安装Docker,命令:yum install docker-ce-版本号,我选的是docker-ce-18.03.1.ce,如下。
2024-01-19 21:32:40
1119
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人