自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(546)
  • 收藏
  • 关注

原创 【MySQL】MySQL函数之JSON_EXTRACT

在 MySQL 中,函数用于从 JSON 文档中提取一个或多个值。这个函数非常有用,特别是在处理存储在 JSON 格式中的复杂数据时。下面是一些关于如何使用的详细说明和示例。

2025-03-22 15:42:56 258

原创 Ubuntu 系统下安装 Nginx

若发现以下错误,这是因为80端口已经被其他进行占用导致Nginx无法绑定到80端口上,可尝试查询端口占用进程并终止该进程。

2025-03-22 02:56:22 704 1

原创 Spring事务(Transaction)

编程式对事物控制的细粒度更高,我们能够精确的控制事务的边界,事务的开始和结束完全取决于我们的需求,但这种方式存在一个致命的缺点,那就是事务规则与业务代码耦合度高,难以维护,因此我们很少使用这种方式对事务进行管理。但完全的事务隔离会导致性能问题,而且并不是所有的应用都需要事务的完全隔离,因此有时应用程序在事务隔离上也有一定的灵活性。隔离性(Isolation):一个事务的执行不能被其它事务干扰,即一个事务内部的操作及使用的数据对并发的其它事务是隔离的,并发执行的各个事务之间不能互相打扰。

2025-03-22 01:20:05 332

原创 SpringBoot之JWT令牌校验

您首先定义了一个JWT字符串,模拟了用户传递过来的token。

2025-03-10 23:53:35 736

原创 Spring Cloud Data Flow 简介

1.Data flow 是一个用于开发和执行大范围数据处理其模式包括ETL,批量运算和持续运算的统一编程模型和托管服务。2.对于在现代运行环境中可组合的微服务程序来说,spring cloud data flow是一个原生云可编配的服务。使用spring cloud data flow,开发者可以为像数据抽取,实时分析,和数据导入/导出这种常见用例创建和编配数据通道 (data pipelines)。

2025-03-10 17:54:09 587

原创 Redis的优势和特点

Remote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

2025-03-10 13:08:00 683

原创 PHP操作redis

下载win版php-redis扩展php-redis.dll文件,放入ext目录下,修改php.ini 并重启服务;默认在项目中还是采用官方的phpredis,本文也给出predis的使用方法,见后面的composer方式。2)phpredis需要下载扩展->编译安装,而predis不用,直接下载便可以操作。1)PHP的redis扩展有2个,分别是phpredis和predis扩展;安装phpredis,也可以从pecl.php.net站点下载。以下附上一个自主开发的PHP多库连接单例类,支持长连接。

2025-03-07 23:18:45 430

原创 MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案

mysql 5.7.5版本以上默认的sql配置是:sql_mode=“ONLY_FULL_GROUP_BY”,这个配置严格执行了"SQL92标准"。但是,如果mysql是高版本,当执行group by时,select的字段不属于group by的字段的话,sql语句就会报错。这里说sql_mode不能设置NO_AUTO_CREATE_USER这个值,那直接去掉这个值就行了呗,也就是上面我提供的值。由于开启了ONLY_FULL_GROUP_BY的设置,如果select 的字段不在 group by 中,

2025-03-05 19:33:26 1274

原创 MySQL--》快速提高查询效率:SQL语句优化技巧与实践

MISAM引擎把一个表的总行数存在了磁盘上,因此执行count(*)的时候会直接返回这个数效率很高;:通过表的索引或全表扫描,读取满足条件的数据行,然后在排序缓冲区sort buffer中完成排序操作,所有不是通过索引直接返回排序结果的排序都叫FileSort排序。count():是一个聚合函数,对于返回的结果集一行行地判断,如果count函数的参数不是NULL累计值就加1否则不加,最后返回累计值。:在InnoDB存储引擎中,表数据都是根据主键顺序组织存放的,这种存储方式的表称为索引组织表。

2025-03-05 18:12:21 679

原创 java高级工程师面试题_java高级工程师面试题及答案解析

存储数据的字符数组没有被final修饰,说明值可以改变,抽象类AbstractStringBuilder内部都提供了一个自动扩容机制,当发现长度不够的时候(初始默认长度是16),会自动进行扩容工作,扩展为原数组长度的2倍加2,创建一个新的数组,并将数组的数据复制到新数组,所以对于拼接字符串效率要比String要高。String 声明的是不可变的对象,每次操作都会生成新的 String 对象,然后将指针指向新的 String 对象,而。GC,加大老年代可调1:1,但是要给老年代预留三分之一的空间。

2025-03-05 16:48:34 338

原创 Java自学路线图之Java进阶自学

说句实话,如果一个打工人不想提升自己,那便没有工作的意义,毕竟大家也没有到养老的年龄。当你的技术在一步步贴近阿里p7水平的时候,毫无疑问你的薪资肯定会涨,同时你能学到更多更深的技术,交结到更厉害的大牛。推荐一份Java架构之路必备的学习笔记,内容相当全面!!!成年人的世界没有容易二字,前段时间刷抖音看到一个程序员连着加班两星期到半夜2点的视频。在这个行业若想要拿高薪除了提高硬实力别无他法。你知道吗?现在有的应届生实习薪资都已经赶超开发5年的程序员了,实习薪资26K,30K,你没有紧迫感吗?

2025-03-05 01:38:44 290

原创 Docker:基于自制openjdk8镜像 or 官方openjdk8镜像,制作tomcat镜像

78.56 MBopenjdk二进制下载地址Dockerfile中,source /etc/profile不能加载的原因为什么还需要选择使用他的原因:三 中,tomcat普通用户交互式启动tomcat#在 Docker 容器中,/etc/profile 文件不会在容器启动时自动执行,这是因为 Docker 容器通常不会启动交互式登录 shell,而是直接运行指定的命令。

2025-03-05 00:21:12 518

原创 用JAVA实现人工智能:采用框架Spring AI Java

过去,Java在AI应用框架方面存在不足,缺乏一个能够良好支持AI开发的统一框架。Spring AI应运而生,它是一个专为AI工程设计的应用框架,旨在将Spring生态系统的设计原则如可移植性和模块化引入AI领域。Spring AI的核心优势在于它提供了一套标准化接口,使得开发者可以轻松地切换不同的AI服务提供商,仅需修改配置即可。此外,Spring AI与现有的Spring生态兼容性极好,同时也完美地融入了Java面向对象编程的特点。这不仅简化了开发流程,还极大地减少了迁移和维护的成本。

2025-03-02 22:33:21 1085 1

原创 对基因列表中批量的基因进行GO和KEGG注释

获得一个基因列表后,进行GO(Gene Ontology)和KEGG(Kyoto Encyclopedia of Genes and Genomes)注释是生物信息学中常见的分析步骤,可以帮助你理解这些基因的功能、生物学过程以及它们在代谢途径中的角色。确保你的基因列表是清洁的,并且格式正确(通常是基因ID或基因名称)。这些ID应该是标准化的,比如Ensembl基因ID、Entrez基因ID等。2.1使用在线工具。

2025-03-02 21:14:25 982

原创 四大.NET ORM框架深度对比:EF Core、SqlSugar、FreeSql与Dapper的性能、功能与适用场景

框架名称应用场景优势劣势EF Core企业级应用、复杂CRUD操作、强类型支持项目、微服务架构1. 支持多种数据库2. 强大的LINQ支持3. 良好的模型映射和数据验证4. 易于与ASP.NET Core结合5. 跨平台支持,良好社区和文档1. 性能相对较低(尤其在复杂查询时)2. 学习曲线陡峭3. 生成的SQL需要手动优化SqlSugar中小型项目、快速开发场景1. 类似LINQ查询语法,快速上手2. 支持多种数据库。

2025-03-02 19:55:27 264

原创 【Spring Boot】Spring AOP动态代理,以及静态代理

定义 MethodInterceptor 并重写 intercept 方法, intercept 于增强标方法,和JDK动态代理中的 invoke 方法类似//?标对象, 即被代理对象@Override// 代理增强内容System.out.println("我是中介, 开始代理");//通过反射调?被代理类的方法//代理增强内容System.out.println("我是中介, 代理结束");

2025-02-28 23:48:38 637

原创 【kubernetes组件合集】深入解析Kubernetes组件之三:client-go

client-go是Kubernetes官方提供的Go语言客户端库,它为开发者提供了与Kubernetes API进行交互的便捷方式。它封装了与Kubernetes API服务器通信的细节,使开发者能够轻松地创建、更新和删除Kubernetes资源对象。

2025-02-28 22:11:03 1038

原创 SQL编写:十个在实践中养成的好习惯

写SQL是数据分析和数据库管理的重要技能之一。通过养成好的SQL编写习惯,你将能够编写出高效、可靠和易于维护的查询,提高数据分析和数据库管理的效率。

2025-02-28 13:08:31 243

原创 SpringCloud篇(服务网关 - GateWay)

Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。创建项目,引入nacos服务发现和gateway依赖配置application.yml,包括服务基本信息、nacos地址、路由路由id:路由的唯一标示。

2025-02-28 11:26:38 1190

原创 SpringBoot3 集成 Shiro

是一个强大且易用的Java安全框架,提供了身份验证、授权、密码学和会话管理等功能。它被广泛用于保护各种类型的应用程序,包括Web应用、桌面应用、RESTful服务、移动应用和大型企业级应用。没有Spring Security 那么多晦涩的概念和术语,其原理非常清晰易懂,也非常容易集成到自己的项目中。SpringBoot 2.x 已于去年底End of life,升级到 SpringBoot 3 成了一件必须要做的事情,而SpringBoot 3 在集成 Shiro 时,有一些坑,也有一些与之前不同之处。

2025-02-27 14:28:48 430

原创 Spring Boot应用关闭分析

本文挖掘了Spring Boot的关闭方式,并列举了关闭方式,从原理、源码的角度阐述了Spring Boot的关闭代码及扩展点。同时,额外说明了一些系统特性 和原理,比如,程序退出码和信号机制。

2025-02-27 13:04:55 746

原创 Redis为什么这么快?Redis的线程模型与Redis多线程

多路I/O复用模型是利用 select、poll、epoll 可以同时监察多个流的 I/O 事件的能力,在空闲的时候,会把当前线程阻塞掉,当有一个或多个流有 I/O 事件时,就从阻塞态中唤醒,然后程序就会轮询一遍所有的流(epoll 是只轮询那些真正发出了事件的流),并且依次顺序的处理就绪的流,这种做法就避免了大量的无用操作。在redis的多线程模式下,获取、解析命令,以及输出结果着两个过程,可以配置成多线程执行的,因为它毕竟是我们定位到的主要耗时点,但是命令的执行,也就是内存操作,依然是单线程运行的。

2025-02-27 11:43:30 472

原创 Navicat社区版终于来了!!!

2024年6月26日,知名数据库管理工具 Navicat 推出了全新的免费版本——Navicat Premium Lite,专为小企业和初创公司打造。作为一款功能强大且易于使用的数据库管理解决方案,Navicat Premium Lite 现已正式上线 TitanIDE 模板市场,供广大用户学习和使用。在这篇文章中,我们将为您介绍如何在TitanIDE上使用 Navicat Premium Lite,以及在TitanIDE上使用Navicat多便捷,多安全。在TitanIDE。

2025-02-26 02:49:46 804

原创 MySQL下载安装配置(超级超级入门级)

MySQL是一个关系型数据库管理系统**,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。**MySQL官网下载地址:https://dev.mysql.com/downloads/mysql/打开官网,现在最新是9.0版本,我们这里选择8.03版本即可,系统选择Windows然后点Go to Download Page这里我们选择第二个选择不登陆下载安静等待即可,很快的打开我们刚刚下载的地址,双击打开选择自定义安装->next然后,我们选择第一个的****MySQL Servers ,点

2025-02-26 01:28:55 255

原创 Java面试评语及录用建议_面试录用评语.doc

但有的面试官和HR写的面试评语尽是些“各方面条件合适,建议录用”、“不合适,淘汰”等泛泛而谈的语句,一点反映求职者个性差异的素质评价描述都没有,写了等于白写,毫无意义,需要改善。善于表达,思路清晰,条理清楚,逻辑性强,善于抓住问题的关键,和成员观点不一致时,能够保持冷静,敢于说服他人与其保持一致意见,但在强调自己的观点时说服力不够,无大局意识,积极维护个人。张四:语言表述清楚,条理基本分明,善活跃气氛,有积极主动沟通的意识和技巧,分析问题时基本能概括总结不同的意见,积极性不高,篇二:如何写好面试评语?

2025-02-25 22:08:01 285

原创 java自动化高频面试题

1. Selenium工作原理?2. Selenium有哪一些组件?3. WebDriver协议是什么?4.Selenium中的三大等待分别是?5.web ui自动化中显式等待、隐式等待有什么区别?1. 请尽可能多的列出自动化的元素定位方式,以及你最常用的定位方式?2. 如果一个元素无法定位,你一般会考虑哪些方面的原因?3. 动态属性元素如何定位?

2025-02-24 23:50:27 136

原创 centos搭建 Node.js 开发环境

Node.js ,通常简称为Node,是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Chrome V8引擎,具备速度快、性能强等特点,可用于搭建各类网络应用,及作为小程序后端服务环境。npm和npx都是和 Node.js 相关的命令行工具,它们在 JavaScript 开发中扮演着重要的角色。npm:1、允许开发者在项目中安装、管理和共享JavaScript包和模块;2、可以自动处理项目依赖,确保所有必要的包都被安装,并且版本兼容;

2025-02-24 16:48:56 1095

原创 解决 MySQL 服务无法启动:failed to restart mysql.service unit not found

在日常使用 MySQL 数据库时,有时候可能会遇到服务无法正常启动的问题。这类问题通常出现在系统更新或者服务配置文件发生变动之后。本文针对 MySQL 服务启动失败,提示的错误信息,提供解决方案,帮助读者快速排查问题并解决。通过上述步骤,我们解决了 MySQL 服务无法启动的问题。问题的根源在于旧版本的文件与最新的文件发生了冲突,导致系统在启动 MySQL 时找不到正确的服务单元文件。通过备份旧文件并重新启动服务,问题得以顺利解决。MySQL 服务的正常运行对数据库应用的稳定性至关重要。

2025-02-23 06:46:22 354

原创 搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程

本文开发环境,均为 windows 环境,mac 环境其实也类似 ~① 编译proto文件,相关插件 简单介绍:protoc是编译器,用于将.proto文件编译成代码;是一个插件,用于生成Go语言的数据结构代码;是另一个插件,用于生成Go语言的gRPC服务代码。这三个工具共同支持在Go语言环境中使用protobuf和gRPC。在编译.proto文件时,go_out和这两个参数分别会调用以下文件:go_out:这个参数会调用插件。插件的主要作用是将.proto文件转换为Go语言的代码。

2025-02-23 05:00:41 813

原创 SQL入门到精通 理论+实战 -- 在 MySQL 中学习SQL语言

SQL(发音为字母 S-Q-L 或 sequel)是(结构化查询语言)的缩写。SQL 是一种专门用来与数据库沟通的语言。SQL的优点:简答易学,几乎所有重要 DBMS 都支持 SQL,很灵活。创建:CREATE + [数据库 | 表 | 视图 | …] + name删除:DROP + [数据库 | 表 | 视图 | …] + name修改:ALTER + [数据库 | 表 | 视图 | …] + name使用事务处理(transaction processing),通过。

2025-02-21 22:40:01 1031

原创 Springboot 3项目整合Knife4j接口文档(接口分组详细教程)

springboot 3开始javax包改成了jakarta,而swagger-oas等包中依然使用的是javax,所以报错。另外springfox已经停止更新有段时间了,并且不支持OpenAPI 3标准,升级Springboot 3.0以后会有更多问题暴露出来。而SpringBoot 3只支持OpenAPI 3规范,因此Spring官网推荐了Springdocspringfox 3.0.0: 同时兼容OpenAPI 2以及OpenAPI 3,但是停更很久了。

2025-02-21 15:47:47 1210

原创 Spring Boot 3.3.4 升级导致 Logback 之前回滚策略配置不兼容问题解决

在将 Spring Boot 项目升级至 3.3.4 版本后,遇到 Logback 配置的兼容性问题。本文将详细描述该问题的错误信息、原因分析,并提供调整日志回滚策略的解决方案。在 Spring Boot 升级至 3.3.4 后,由于底层 Logback 版本的更新,原先使用的类和日志文件名中的%i令牌会引发兼容性问题。通过调整日志回滚策略,使用新的并去除不兼容的文件命名模式,可以顺利解决这些问题,使日志系统恢复正常运行。

2025-02-21 02:40:32 431

原创 PostgreSQL版本选择

PostgreSQL 社区目前支持最新的三个主版本(每个版本的支持周期通常为 5 年)。如果项目需要最新功能(如性能改进或新特性),可以选择最新版本。PostgreSQL 官方会定期发布新版本,分为。具体选择应根据项目需求和运维策略确定!

2025-02-21 01:19:29 420

原创 net.sf.jsqlparser.statement.select.Select.getSelectBody()

发生这个问题就是因为Pagehelper中jsqlparser和Mybatis-puls中jsqlparser冲突,以我的项目来说,我项目中的Pagehelper中jsqlparser版本为4.2而Mybatis-puls中jsqlparser的版本为4.9,就导致版本兼容问题。如果你想以Pagehelper中jsqlparser的版本来使用的话,那么项目将启动不起来,就比如拿我的项目来说,如果我在pom文件中添加。你可以提升一下pagehelper的版本 这是maven中央仓库。

2025-02-20 22:57:57 327

原创 使用rustDesk搭建私有远程桌面

RustDesk – 开源远程桌面访问软件客户端:https://github.com/rustdesk/rustdesk/releases/tag/1.2.7服务端:https://github.com/rustdesk/rustdesk-server/releases/tag/1.1.11-1ubuntu20.04使用上面的地址,下载服务端安装包解压后会出现一个amd64的文件夹,进入后里面包含3个文件:(这里可以直接启动,也可用通过nodejs 的PM2命令启动),推荐使用nodejs 的PM2

2025-02-16 10:22:17 1222

原创 【数据库】MySQL的安装与卸载

首先,我们要把之前安装的或者没安装成功的mysql及其相关清除。第一次安装mysql的,为确保顺利也跟着流程走一遍吧。**第一步:**打开设置,搜索控制面板然后找到程序和功能并进入,再将有关mysql的软件全部卸载。**第二步:**快捷键Win+E打开资源管理器,点击查看,然后勾选隐藏的项目,然后点击C盘下刚出现的,然后找到里面的MySQL文件夹右击删除。然后在开始菜单下搜索服务,双击打开后找到MySQL停止此服务。再快捷键Win+R,输入cmd点击确认,输入sc delete mysql,删除服务。

2025-02-16 01:25:44 1550 2

原创 【Rabbitmq篇】高级特性----事务,消息分发

此时将会只接收到5条,并且会阻塞住,达到一个限流的状态。

2025-02-15 23:08:40 875

原创 【Java基础巩固系列】高级Java进阶之最全面技术架构思维导图

学习如逆水行舟,不进则退!生活和工作,很多地方我们也需要不断的学习和努力。不少Java同行,可能和之前的我一样,工作闲暇之余,想充分利用时间,学习一些新技术或是复习一下流行、开源的框架,但因为平时比较忙,没有时间梳理。常常是想学却没有明确的方向或是清晰的思路。不用担心,今天和大家分享一下比较全面的一个java学习技术导图!

2025-02-15 21:48:15 133

原创 SQL之delete、truncate和drop区别

相同点:1、都有删除表的功能;不同点:1、delete、truncate仅仅删除表里面的数据;drop会把表的结构也删除掉2、delete是DML语句,操作完了,还可以回滚;truncate和drop是DDL语句,删除之后立即生效,不能回滚;3、在执行效益上drop>truncate>delete;扩展知识:为了形成数据库语言,DDL和DML都是必须的。DDL和DML之间的主要区别在于:DDL有助于更改数据库的结构,而DML有助于管理数据库中的数据。

2025-02-15 20:17:01 1092

原创 SpringBoot项目中替换指定版本的tomcat

通过以上步骤,可以成功替换Spring Boot项目中的Tomcat版本。需要注意的是,切换Tomcat版本可能会影响应用的兼容性和性能,因此在实际操作前需要进行充分的测试和评估。在`pom.xml`文件中,找到Spring Boot的依赖项,并添加或修改Tomcat的版本属性。在Spring Boot项目中替换指定版本的Tomcat,可以通过修改项目的`pom.xml`文件来实现。切换Tomcat版本可能会影响应用的兼容性和性能,因此在实际操作前需要进行充分的测试和评估。

2025-02-15 18:54:45 547

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除