- 博客(33)
- 收藏
- 关注
原创 linux日志排查相关命令
zgrep -A 3 “启动” springboot-mybatis-demo.log.2025-01-25.0.gz。zgrep -B 3 “启动” springboot-mybatis-demo.log.2025-01-25.0.gz。zgrep -C 3 “启动” springboot-mybatis-demo.log.2025-01-25.0.gz。tail -f -n 100 文件名。grep -A 3 “呀1” 文件名。grep -B 3 文件名。grep -C 3 文件名。
2025-01-25 20:45:06
202
原创 npx和npm和pnpm的异同
都是用于管理和运行 JavaScript/Node.js 包的工具,但它们的功能和使用场景有所不同。是 Node.js 包管理器的一个附加工具,主要用于运行 npm 包而不需要全局安装。是 Node.js 的默认包管理工具,功能最全面,主要用于管理项目的依赖包。是一个高效的包管理工具,注重速度和磁盘使用效率,特别适合大型项目。根据你的需求,可以混合使用这些工具。
2025-01-03 22:42:14
922
原创 在 Mac M1 上使用 Docker 运行 Jenkins
在 Mac M1 上使用 Docker 运行 Jenkins,你需要注意以下几点:1. 安装 Docker Desktop首先,确保你已在 Mac M1 上安装并配置了 Docker Desktop。你可以从 Docker 官方网站 下载并安装适用于 Apple Silicon(M1)的版本。2. 拉取 Jenkins 镜像为了使用 Jenkins,你需要拉取 Jenkins 的 Docker 镜像。可以运行以下命令:docker pull jenkins/jenkins:ltslts 是 J
2024-12-18 11:30:48
753
原创 Spring Validator对 controller入参集合参数进行校验
controller 对于传入的 list集合参数如何进行优雅的参数校验
2024-10-13 12:25:30
393
原创 ai,大模型,向量,向量数据库之间的关系是整样的?
AI、大模型、向量和向量数据库构成了一种互为支撑的关系,形成了一个完整的数据处理和应用生态系统。大模型为数据提供了深度的特征表示,向量则为数据的存储和检索提供了有效的方式,而向量数据库则支持大规模向量的高效管理和快速检索,推动了 AI 应用的发展。
2024-09-27 16:45:01
642
原创 User-Agent字段提取浏览器信息
你可以将这个代码片段复制到你的 Java 项目中,替换示例中的 userAgent 字符串为实际的 userAgent,然后运行程序以获取所需的信息。getDeviceType:通过检测 userAgent 字符串中的关键字(如 Mobi 和 Android)来判断设备类型(手机或电脑)。getBrowserInfo:通过正则表达式匹配 userAgent 字符串中的浏览器信息,并提取浏览器名称和版本号。parseUserAgent:调用上述函数,综合提取并返回浏览器、设备类型和平台信息。
2024-07-02 17:51:14
471
原创 mybatis缓存Cache实现类说明
MyBatis 提供了几种不同的缓存实现,默认情况下,它使用的是基于内存的缓存,但你也可以使用第三方的缓存库来增强缓存功能。下面是 MyBatis 的。这些缓存实现类可以根据不同的需求和场景进行选择和配置,以达到最佳的缓存效果。
2024-06-27 16:04:07
421
原创 flowable使用和基本概念
flowable是一个Java编写的项目,然后里面内置了很多api,你只需要调用它定义好的api就可以实现数据的流程审批。然后它为了让流程更加的灵活可变,配置这些。就采用了xml的方式实现流程的配置,各个节点的配置等。一般在使用flowable的时候,后端直接引入flowable这个maven就好了。前端就需要引入其他开源的bpm.js简化xml的编辑操作。其实flowable原生也有自带的前端流程编辑界面,由于太过于复杂,就不推荐使用了。
2023-11-08 14:43:37
1040
1
原创 spring-cloud-alibaba 配置文件自动刷新原理分析
启动一个10ms执行一次单线程的定时线程池A, 来进行检查配置是否有更新并再启用一个定时线程池B来并发执行多个文件修改的场景在B线程池中,使用30s的长轮询机制主动向服务端(Nacos)查询哪些文件发生了变化然后拿到这些变化的文件id等信息, 再次请求服务端(Nacos)拿到具体的配置内容,并写到内存中经过检查md5后, 将这些配置内容通过spring的监听机制写到spring中。
2023-05-24 14:58:30
482
原创 flowable 根据模型key获取流程模型
这个类就是flowable 为了我们程序员方便操作而预留的api类。里面提供了一堆的api。按照以前的我,我就会一脸懵逼的点进来,然后在继续往下面多点几哈,然后发现根本看不懂。然后就只看其表象不见其原理。心里默想一句管他的。反正知道他是干嘛的就行了。不管它是整么实现的。在springBoot + flowable + Mybatis-Plus中底成就是复用了ibatis 的Configuration配置类做了容器。把sql放入到了MappedStatement中。
2023-03-04 12:10:51
1530
1
原创 springBoot自动注入原理
1、注解切入1.1、@spirngBootApplication1.2、复合注解复合注解:就像类的继承关系一样。注解的上面还有注解1.2.1、1上图的1是Java的原注解:@Target:标记这个注解应该是哪种 Java 成员、作用的范围。具体的值参照:ElementType TYPE, 类、接口(包括注释类型)或枚举声明 FIELD, 字段声明(包括枚举常量) METHOD, 方法声明
2022-01-04 08:43:40
1354
2
原创 图解工厂模式
什么是工厂设计模式?工厂设计模式,顾名思义,就是用来生产对象的,在java中,万物皆对象,这些对象都需要创建,如果创建的时候直接new该对象,就会对该对象耦合严重,假如我们要更换对象,所有new对象的地方都需要修改一遍,这显然违背了软件设计的开闭原则,如果我们使用工厂来生产对象,我们就只和工厂打交道就可以了,彻底和对象解耦,如果要更换对象,直接在工厂里更换该对象即可,达到了与对象解耦的目的;所以说,工厂模式最大的优点就是:解耦抽象工厂的实现抽象工厂可以用来生产一组相同,有相对关系的产品;重点在于一组
2021-11-20 13:21:41
464
原创 jvm指令集(也就是.class文件反编译后的命令)
跳转到class文件目录,使用javap -c StringTest.class -> p.txt1命令将编译后的文件输出到p.txt文件栈和局部变量操作将常量压入栈的指令aconst_null 将null对象引用压入栈iconst_m1 将int类型常量-1压入栈iconst_0 将int类型常量0压入栈iconst_1 将int类型常量1压入栈iconst_2 将int类型常量2压入栈iconst_3 将int类型常量3压入栈iconst_4 将int类型常量4压入栈ic
2021-10-25 21:18:16
246
原创 linux 部署项目邮件发送失败
拿来把你(Springboot 邮件)这里采用的是163邮箱。 mail: host: smtp.163.com username: xxxxxxx@163.com password: xxxxxxxxx nickname: xxxxxx #别名 protocol: smtp properties: mail: smtp: port: 465 auth: true
2021-08-06 16:03:26
795
原创 Spring框架的使用
Spring的使用###1、传统的三层架构问题M:Model pojo service DAOV:View HTML jspC:Controller ServletController------------------>Service-------------------->DAOServlet 提供事务 JDBC|dbutil
2020-06-17 00:01:43
865
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人