- 博客(46)
- 收藏
- 关注
原创 springboot整合xxl-job实现定时任务
xxl-job包括调度中心和执行器两个主要部分,调度中心负责管理调度信息,按照调度配置发出调度请求,执行器负责接收调度请求并执行对应的JobHandler中业务逻辑。通过这种方式,“调度”和“任务”两部分可以相互解耦,提高系统整体稳定性和扩展性。大概原理如下:任务的注册是通过在xxl-job-admin管理平台上配置任务信息,包括任务名称、执行器地址、任务参数等。xxl-job-admin管理平台会根据任务的配置信息,将任务调度信息写入数据库。
2024-10-15 17:01:37
1048
原创 六种定时任务记录
1、java自带的TimerTimer timer = new Timer(); timer.schedule(new TimerTask() { int i = 0; @Override public void run() { System.out.println("循环执行的代码块"+ i++); } },启动后多长使劲按第一次开始执行,间隔执
2024-10-15 13:52:48
342
原创 Springboo通过http请求下载文件到服务器
请注意,我修改了setRequestProperty的键从"Charset"到"Content-Type",但通常对于GET请求来说,设置"Content-Type"并不是必需的,因为它是由请求体(对于GET请求来说,请求体是空的)的媒体类型决定的。然而,如果你正在向服务器发送POST或PUT请求,并包含请求体,那么设置正确的"Content-Type"就非常重要了。请注意,上面的downloadAndSave方法实际上并没有以异步方式工作,因为lambda表达式内的代码是同步执行的。
2024-09-30 09:46:36
1216
原创 springboot整合Logback
当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。设置Logback在启动和运行过程是否会打印日志。debug="true"时Logback会在启动时输出其加载的配置文件内容、各个组件的状态等信息,有助于快速定位问题。
2024-09-05 10:38:21
2559
转载 国内AI工具分类大盘点,这些神器你都用过了吗?
AI爆发到现成已经快2年了,基本上我自己也使用了近2年的AI产品。国内、外的AI产品体验了很多。从最初文本聊天类的gpt、new bing、文心一言、通义千问,到后面绘图类Midjourney、Stable Diffusion、文心一格、通义万相等等。在这里来分享我自己使用的一些国内AI工具,希望能为大家提供一些实用的参考。先总体来看看目前国内AI的一些分类,当然我这里只是收集了很少一些分类。据统计目前国内大大小小的AI产品已经上千个了。
2024-09-02 11:16:36
1167
原创 Spring Boot整合Spring Security+JWT+OAuth 2.0 实现认证鉴权登录(框架介绍)
该模式针对客户端而言,对用户是透明的,不需要用户参与,非用户层面授权。客户端向授权服务器发送自己的的 client_id 和client_secrect 请求 access_token ,用户中心仅校验客户端应用身份。客户端通过授权后可以获得授权范围内所有用户的信息,对客户端应用需要极高的信任。
2024-08-30 09:02:07
1961
1
原创 Maven的配置文件pom.xml标签详解(含常用plugin)
一、什么是pom.xmlpom.xml是Maven项目的核心配置文件,它是 项目对象模型 - Project Object Model(POM) 的缩写。POM定义了项目的所有属性,包括项目的名称、版本、依赖关系、构建配置等。使用pom.xml,我们可以轻松地管理项目的构建和依赖关系,让我们能够更专注于业务逻辑的开发。二、pom.xml的结构我们先看一个简单pom.xml的结构,首先和标签主要针对的是本pom.xml文件的格式,如下:<?xml version="1.0" encoding=
2024-08-23 17:24:02
3136
原创 Springboot基础------控制器、过滤器、拦截器、监视器
过滤器可以在调用控制器方法之前进行一些操作,是基于Servlet规范的。过滤器类一般放在filter包下。(过滤器是处于客户端与服务器资源文件之间的一道过滤网,帮助我们过滤一些不符合要求的请求。通常用作:统一设置字符编码过滤敏感字符进行登录校验以及 url 级别的访问权限控制。大白话:过滤器就是一道上了锁的密码门,进入都需要指定密码才能进入,密码不对就进不去)。是Spring MVC框架中的一个重要特性,它允许你在请求处理流程中的特定点执行自定义逻辑。
2024-08-23 10:56:03
1273
原创 idea根据类中import找到本地maven依赖
5、当4步骤找不到本地依赖时,右框从顶层依赖往下排除即可,只到找到本地的maven依赖。1、选择要找到的maven依赖的import, ctrl+鼠标左击。2、确认maven依赖名称,通过maven的查找工具。4、鼠标右击对应的版本,选择转到maven依赖项即可。
2024-08-15 17:29:41
645
转载 try-with-resources用法
使用try-with-resource语句可以简化代码,避免了手动关闭资源的繁琐操作(可减少由人为忘记关闭资源,造成内存使用率过高,OOM:内存溢出),同时还可以保证资源的正确关闭,避免了资源泄漏的问题。编译器会将try-with-resources语句转换为普通的try-catch语句,并在finally块中自动调用资源的close()方法来关闭资源。try-with-resource是Java 7中引入的新特性,它可以方便地管理资源,自动关闭资源,从而避免了资源泄漏的问题。
2024-07-22 08:57:54
235
原创 k8s部署应用,内存使用率一直缓慢增长问题处理,但是没有触发OOM
一个银行项目,该项目使用的是微服务,是通过k8s(部署镜像)+docker(生成镜像)+harbor(管理镜像),(双节点)进行性能压测测试,发现一个服务内存的内存使用率一直增长,不管调整多大内存,内存使用率都能飘到80%以上。最后确定问题,由于我们功能涉及腾讯cos对象存储,使用模板对象存储上传的方式是文件流上传,上传完成后未释放其缓存,最后优化该模块问题即可。第二步骤,未测试出什么问题,就尝试限制内存,尝试各种jvm参数,各种垃圾回收机制,影响都不大,有的反而让内存使用率更大了。通过jdk自带的工具。
2024-07-18 11:09:08
659
原创 有网镜像移动到无网环境
接下来,你需要将这些tar文件传输到没有网络连接的机器上。你可以使用U盘、移动硬盘、或其他任何文件传输方法(如果两台机器都在同一个网络上,即使不能直接访问互联网,你也可能能够使用局域网内的文件共享服务)。一旦tar文件被传输到无网络连接的机器上,你就可以使用docker load命令来加载这些镜像了。这将从tar文件中加载镜像到你的Docker环境中,使得它们可以在没有网络连接的情况下被使用。3、将tar文件传输到无网络环境。4、在无网络环境的机器上加载镜像。加载其他你需要的镜像。
2024-07-11 20:33:08
277
原创 IDEA 中使用 JvisualVM 监控程序运行情况
JvisualVM是 JDK 提供的一款可用于查看 JVM 中 Java 进程运行情况的工具,多用于对程序性能/堆栈信息进行分析,或分析程序 dump 文件。
2024-07-05 17:00:42
1109
原创 Linux环境查看日志相关命令
发送到表单的数据通常以 multipart/form-data 或 application/x-www-form-urlencode 类型进行编码。Curl 命令可以与 cookie 一起使用,验证身份后,访问受限制的资源。使用 -d 选项还会添加一些隐式的 HTTP 头,比如 Content-Type 等。可以使用 POST 请求将数据发送到能处理POST 请求的远程 URL。下面的命令发送一个带有请求的 JSON 对象。注意:如果没有 -X POST,则默认使用 HTTP 协议的 GET 方法。
2024-07-03 10:45:13
526
原创 Encountered invalid @Scheduled method ‘***‘: Only no-arg methods may be annotated with @Scheduled
bug收集及处理
2024-06-24 10:18:36
370
原创 docker常用命令
sudo docker - f 容器名sudo docker load < / home/自定义镜像docker load - i 镜像保存文件位置-i:以交互模式运行容器,通常与 -t 同时使用-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用-p : 端口映射 格式为[主机端口:容器端口]-d : 后台模式运行-name : 给容器一个新的名称-v:挂载主机的目录-e: username="ritchie": 设置环境变量-m:设置容器使用内存最大值。
2024-05-22 13:51:55
253
1
原创 使用Stream流操作list
Java Stream 是 Java 8 中引入的一个新特性,它允许您以声明式方式处理数据集合,从而使代码更加简洁、易读。Stream API 提供了一组丰富的方法,用于对集合进行各种操作,如过滤、映射、排序等。
2024-01-30 16:10:36
998
原创 OOM内存溢出排除方法
tomcat退出前或者发生OutOfMemeoryError时自动dump堆栈信息,方便事后排查问题。jmap -dump:live,format=b,file=/保存路径/文件名.hprof PID。在tomcat启动参数中加入两个参数。linux用ps命令查看进程pid。然后重启tomcat服务。
2023-08-29 14:22:22
325
原创 java实现异步任务功能的方法
方法名说明传入实现了 Runnable 接口的类,构造一个 Thread 对象传入实现了 Runnable 接口的类,构造一个名称为 name 的 Thread 对象方法名说明V call()这是 Callable 接口中要实现的方法,相当于 Runnable 接口中的 run 方法使用 Callable 接口实现类实例创建一个 FutureTask,它运行时会调配用 Callable 接口中的 call 方法V get()
2023-07-20 08:57:16
2880
原创 Linux环境线程阻塞问题排查
可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小等等。命令可以查看堆内存各部分的使用情况,以及加载类的数量[不能查看使用哪种垃圾回收器]JDK 自带的监控工具,位于 JDK 的 bin 目录下。4、线程的堆栈信息 这个pid用10进制就行。3、将线程id(十进制)转化为16进制。jstack -l 线程pid。1、查看想要查看的服务名称。2、查看该进程下线程的状态。top -Hp 进程id。
2023-06-29 10:34:31
2478
原创 腾讯云Linux服务器安装redis
假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。这里我要将daemonize改为yes,不然我每次启动都得在redis-server命令后面加符号&,不这样操作则只要回到Linux控制台则redis服务会自动关闭,同时也将bind注释,将protected-mode设置为no。按照以上安装步骤,在目录/app/redis/redis下有一个redis.conf的配置文件。
2023-05-05 16:06:42
349
原创 mysql语句中进行比较
其中,expression是需要进行判断的条件,value1、value2等是条件的具体值,result1、result2等是对应条件下要执行的操作的结果,default_result是在所有条件都不满足时要执行的操作的结果。上述查询语句会将学生的姓名和分数作为输入参数,然后根据学生的成绩返回对应的等级。如果在80分及以上,则返回B;假设有一个表student,其中包含学生的姓名和分数,现在要根据学生的成绩来评定等级,分为A、B、C三个等级。MySQL中的CASE语句可以根据不同的条件执行不同的操作。
2023-05-04 15:48:03
194
转载 Netty基础知识
Netty是由 JBOSS 提供的一个 java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。Netty整合了网络编程、多线程处理和并发等多个领域,极大地简化了网络开发的流程。Netty本质是一个NIO框架,适用于服务器通讯相关的多种应用场景 ,它能够快速和轻松地开发网络应用程序,如协议服务器和客户端。它极大地简化了TCP和UDP套接字服务器等网络编程。
2023-02-28 10:31:30
767
转载 Java Utils工具类大全 源码和jar见:
Java Utils工具类大全 源码和jar见:https://github.com/evil0ps/utils#Java Utils封装了一些常用Java操作方法,便于重复开发利用.另外希望身为Java牛牛的你们一起测试和完善,欢迎入群263641914 一起封装和完成常用的Java代码。节约撸码时间以方便有更多的时间去把妹子~#开发环境Win7x64JDK1.7IDEA14项目结构│ README.md│ utils.iml│├─.idea│├─conf│
2022-09-20 15:00:59
403
原创 常用linux命令
1、删除命令删除文件夹 :rmdir 名称删除文件:rm 名称2、添加命令添加文件夹:mkdir 名称添加文件:touch 名称
2022-07-22 16:05:05
1977
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人