自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【MySQL】MVCC详解, 图文并茂简单易懂

MVCC也称:多版本并发控制. 顾名思义,MVCC是通过数据行的多个版本管理来实现数据库的并发控制.MVCC使得在InnoDB的事务隔离级别下, 执行一致性读操作有了保证. 简单来说就是: 在需要读取一些正在被另一个事务更新的行数据时, 读取之前的历史版本数据(旧数据);而不需要等待另一个事务释放锁.并不是所有的存储引擎都支持MVCC技术, 本文讲解的是MySQL中InnoDB存储引擎下的MVCC机制.ReadView就是事务在使用MVCC机制进行快照读操作时产生的读视图。

2025-03-22 15:40:14 536

原创 Transformer 架构对比:Dense、MoE 与 Hybrid-MoE 的优劣分析

1.LLM基础架构类型。

2025-03-22 02:53:37 613

原创 Spring中把一个bean对象交给Spring容器管理的三种方式

Component:适合在本项目内或者各子项目之间使用,允许去更改要管理的对象,去添加该注解。@Import和@Bean适合引入第三方得资源,我们无法去修改其本来的对象。

2025-03-22 01:17:23 221

原创 SpringBoot中整合ONLYOFFICE在线编辑

文件的在线编辑主要就是依托与onlyoffice实现的,而编辑器的配置是通过我们的接口来定义的,接口中的配置可以自由的定义编辑器的文件类型,窗口大小,文件来源,回调地址,保存类型等等。你需要编辑的文件可以放在任意的位置,只要你的接口可以通过流的方式给到onlyofiice编辑器即可。文件编辑后的处理都是在回调中处理的,最好先看一下文档的回调写法。回调的时候记得打印日志,观察一下接口的内容,一定要记得是通过回调中的url参数来获取编辑后的文件流的,并不是通过回调接口直接把文件流给到你。

2025-03-10 23:51:30 856

原创 Spring Cloud Alibaba 组件版本选择

如果不想跨分支升级,如需使用新特性,请升级为对应分支的新版本。下表为按时间顺序发布的 Spring Cloud Alibaba 以及对应的适配 Spring Cloud 和 Spring Boot 版本关系(由于 Spring Cloud 版本命名有调整,所以对应的 Spring Cloud Alibaba 版本号也做了对应变化)如果需要使用 Spring Cloud Greenwich 版本,请在 dependencyManagement 中添加如下内容。2.0.4.RELEASE(停止维护,建议升级)

2025-03-10 17:51:57 955

原创 Redis的LRU算法

(尽管排序本质上也是比较,囧)。这样一来,每次移除的Key并不仅仅是随机选择的N个Key里面最大的,而且还是pool里面idle time最大的,并且:pool 里面的Key是经过多轮比较筛选的,它的idle time 在概率上比随机获取的Key的idle time要大,可以这么理解:pool 里面的Key 保留了"历史经验信息"。最直观的想法:LRU啊,记录下每个key 最近一次的访问时间(比如unix timestamp),unix timestamp最小的Key,就是最近未使用的,把这个Key移除。

2025-03-10 13:05:46 847

原创 php入门教程(超详细,一篇就够了)

本章节主要学习PHP概念、PHP环境搭建、基本语法、PHP函数、PHP文件管理、PHP操作MySQL数据库等知识点,收录于PHP基础系列。该系列主要讲解PHP相关知识点,欢迎童鞋们互相交流。觉得不错可以三连订阅喔。PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,尤其适用于Web开发。PHP可以嵌入到HTML中,并与多种数据库集成,最常用的是MySQL。其灵活性、易学性和强大的社区支持使得PHP成为开发动态网页和Web应用程序的首选语言之一。

2025-03-07 23:16:31 1113

原创 MySQL远程连接错误解决:“Host is not allowed to connect to this MySQL server”详解

用户的host字段(或其他需要远程访问的用户),允许任意远程主机(用 ‘%’ 表示)进行连接,但这一步可能涉及到安全风险,建议只针对需要远程访问的特定用户设置具体的远程IP地址,而不是使用通配符。通过远程客户端访问MySQL服务器时会遇到“Host is not allowed to connect to this MySQL server”的错误提示。确保服务器的防火墙规则允许MySQL服务端口(默认为3306)上的入站流量。或者指定的公网IP地址以接受远程连接。),确保没有禁止远程连接的相关设置,

2025-03-05 19:31:16 631

原创 Mysql---图书借阅管理系统

成功设计并实现了一个数据库图书馆系统用于管理图书信息、读者信息、借阅记录以及图书归还记录。系统需要支持图书借阅、归还以及查询借阅历史等功能。运用了数据库设计的基本流程和方法,从需求分析到概念结构设计、逻辑结构设计、物理结构设计,再到数据库的实现和应用程序的开发,整个过程较为规范和严谨。熟练掌握了数据库管理系统的使用,能够运用 SQL 语言进行数据库的创建、表的设计、数据的插入、查询、更新和删除操作。同时,也学会了使用数据库管理工具进行数据库的维护和管理。

2025-03-05 18:10:05 769

原创 Java面试:a+=a-=aa原理解析

关键点出现了,指令号10(iadd)将栈顶两个int值相加操作数栈现在只有-2和2,明显a+=a-=a*a中a+=的a并没有重新去栈中取值,准确的说四个a的值在计算开始时已经全部取出。所以最后相加的时候,用的是刚开始时定义的a的值。我第一次遇见这个问题的时候,很不巧的算错了结果还和运行结果一致。a+=a-=a*a属于Java基础中比较难以理解的,面试中也经常会遇到这个问题,本篇博客对此问题进行分享总结。先看指令号为2、3、4、5完成的事情,这四行指令完成了将运算需要的数据加载到操作数栈中。

2025-03-05 16:46:12 394

原创 java程序员面试自身优缺点,详细说明

全网已开源程序员的噩梦各位程序猿/媛们都知道,即将要到来的就是金三银四最火爆的跳槽涨薪季了,在各种的一飞冲天下也有着无数的尸横遍野,可以说 助力大家顺利通过金三银四的面试,话不多说,展示!**你和程序员毛毛一样:在小厂苦苦挣扎,公司现有的业务无法给你带来成长想进大厂成为资深的Java工程师,但从未接到过BATJ的HR电话想要成为一名真正精通技术+思维的高手那么我个人非常建议你来看看这份阿里高工熬夜18天码出Java150K字面试宝典,却遭Gith。

2025-03-05 01:36:36 300

原创 docker网络模式及配置

接下来就要为容器分配IP了,docker会从RFC1918所定义的私有IP网段中,选择一个和宿主机不同的IP地址和子网分配给docker0,连接到docker0的容器就从这个子网中选择一个未占用的IP使用。但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。docker容器在启动时默认使用的是bridge模式,docker容器启动后,会连接到一个名为 docker0 的虚拟网桥,故每次启动docker容器的IP都不是固定的,不方便管理,有时候需要进行固定IP映射,比如docker集群管理时。

2025-03-05 00:19:03 965

原创 王炸级更新!Spring Boot 3.4 正式发布,新特性真香!

这或许是一个对你有用的开源项目,mall项目是一套基于 SpringBoot3 + Vue 的电商系统(Github标星60K),后端支持多模块和 2024最新微服务架构 ,采用Docker和K8S部署。涵盖商品、订单、购物车、权限、优惠券、会员、支付等功能!本指南将深入介绍最重要的变更,并提供代码示例以帮助您顺利完成过渡。Cloud项目:https://github.com/macrozheng/mall-swarm。Boot项目:https://github.com/macrozheng/mall。

2025-03-02 22:31:11 922

原创 定时任务特辑 Quartz、xxl-job、elastic-job、Cron四个定时任务框架对比,和Spring Boot集成实战

QuartzQuartz 是一款基于 Java 的开源调度框架,可以用于在指定时间执行任务或在指定时间间隔内重复执行任务。它提供了丰富的 API 和灵活的配置选项,可以满足各种不同的调度需求。Quartz 支持集群部署,可以实现任务的分布式调度。优点:强大的调度功能,支持集群部署,提供丰富的 API 和灵活的配置选项。缺点:学习曲线较陡峭,配置相对复杂,没有自带的管理界面,调度逻辑和执行任务耦合在一起。

2025-03-02 21:12:15 809

原创 启动nginx报错nginx [emerg] bind() to 0.0.0.080 failed (98 Address already in use)

拒绝显示别名,能显示数字的全部转化成数字,(tcp)仅显示tcp相关选项,显示建立相关链接的程序名,仅列出有在 Listen (监听) 的服務状态。一开始以为是端口被占用,停掉对应的端口进程就行了,于是挨个停一遍。然后停掉对应的进程,注意 PID 列才是对应的进程id。完了发现不对啊,并没有作用,启动还是报这个错。那看看网络相关的端口,使用如下命令查找。使用 PID 列下的进程id停掉进程。可以看到这几个端口都是同一个进程。使用如下命令查看对应占用进程端口。那看看80端口跑了什么。

2025-03-02 19:53:10 459

原创 【spring boot】 IDEA 启动springboot项目报missing ServletWebServerFactory

该问题出现原因多样,大多数是因为配置不当的问题,首先要确定自己问题是不是与本问题出现原因一样。

2025-02-28 23:45:53 348

原创 【JAVA高级篇教学】第一篇:Springboot对接通义千问大模型

博主今天打算讲解下Java如何对接阿里云的通义千问大模型,可以自己玩玩ai问答之类的!

2025-02-28 22:08:23 424

原创 SQL常用语句(基础)大全

数据控制语言:用来授权或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,能够对数据库进行监视。DQL是数据查询语言,主要就是select配合其他限制条件的关键字进行查询。如果查询数据的来源来自多张表,则必须对这些表进行连接查询。DDL是数据定义语言,主要是对数据库和数据表的操作。只有当第一个排序条件值一样,才会执行第二个排序条件。左外连接:是表1和表2的交集再并上表1的其他数据。右外连接:是表1和表2的交集再并上表2的其他数据。DML是数据操作语言,主要是对数据表的操作。

2025-02-28 13:05:47 342

原创 SpringCloud实战【九】 SpringCloud服务间调用

这也就是我们接下来要介绍的服务间调用的前提条件。上面的代码比较简单,就不详细的介绍了,主要是RestTemplate中提供了getForObject方法(实际上RestTemplate提供了很多种调用的方法,主要分为Get或者Post),可以指定要调用接口的地址,指定返回的值的类型。代码和第一次的代码基本一样,唯一的区别就是获取服务地址和端口的地方替换成了注册中心中的Application的名字,并且我们的RestTemplate在使用上和第一次没有任何区别,只是在url中不同。下面我们看一下返回的结果。

2025-02-28 11:23:45 673

原创 Springboot3 Mybatis-plus 3.5.9

{"age": 20, "intro": "佛系青年", "gender": "male"}@Data。

2025-02-27 14:25:58 1124

原创 Spring Boot实战:拦截器

什么是拦截器:概念 :拦截器是Spring框架提供的核功能之, 主要来拦截的请求, 在指定法前后, 根据业务需要执预先设定的代码。也就是说, 允许开发员提前预定义些逻辑, 在的请求响应前后执. 也可以在请求前阻其执.在拦截器当中,开发员可以在应程序中做些通性的操作, 如通过拦截器来拦截前端发来的请求, 判断Session中是否有登录的信息. 如果有就可以放, 如果没有就进拦截.拦截器在SpringBoot中主要有以下几个作用:1.2拦截器的基本使用拦截器的使步骤分为两步:1.定义拦截器:实现HandlerI

2025-02-27 13:02:42 681

原创 Redis7笔记(完结)

源码分析个人认为现在不需要看,需要了解的可以看看。

2025-02-27 11:41:15 257

原创 Navicat 连接 SQL Server 详尽指南

Navicat 是一款功能强大的数据库管理工具,它提供了直观的图形界面,使用户能够轻松地管理和操作各种类型的数据库,包括 SQL Server。本文将详尽介绍如何使用 Navicat 连接到 SQL Server 数据库,包括安装设置、连接配置、常见问题排查及高级功能使用。

2025-02-26 02:47:22 767

原创 MySQL——表操作及查询

MySQL的操作中,一些专用的词无论是大写还是小写都是可以通过的。"[]"表示可有可无,插入时,如果不指定要插入的列,则表示默认全部列都要插入数据,插入数据的顺序必须和列的顺序一致。如果插入单行数据,则只需一个"()“,如果想要多行插入,则可以同时追加多个”()"。此外,由于主键或者唯一键对应的值已经存在而导致插入失败,则可以更新数据:除这条语句之外,还有一条语句,名为替换,也可以解决主键或唯一键冲突问题:如果没有发生冲突,就相当于直接插入,如果发生冲突,则删除原有数据,重新插入新数据。全列查询指定列查询查

2025-02-26 01:26:43 290

原创 Java面试突击

自定义类加载器只需要,实现了双亲委派机制,默认实现是空方法,所以我们自定义类加载器主要是重写findClass方法。package 基础面试.JVM;// 自定义类加载器:重写findClass@Overridetry {// 转换成class对象返回// 打破双亲委派:重写loadClass@OverrideClass<?// ,否则使用双亲委派if (!name.startsWith("基础面试.JVM")) {} else {

2025-02-25 22:05:52 1053

原创 JAVA程序员面试总结

至于算法分析,不会、不想研究就算了,记得某次面试对方问我,Collections.sort方法使用的是哪种排序方法,额,吐血三升。最深入的一次,我记得面试官直接问到了我Volatile关键字的底层实现原理(顺便插一句,面试和被面试本身就是相对的,面试官能问这个问题同时也让面试者感觉到面试官也是一个喜爱研究技术的人,增加了面试者对公司的好感,我最终选择的就是问了这个问题的公司),不要觉得这太吹毛求疵了—-越简单的问题越能看出一个人的水平,别人对你技术的考量绝大多数都是以深度优先、广度次之为标准的,切记。

2025-02-24 23:48:19 305

原创 CentOS7安装Mysql5.7(ARM64架构)

看到 3、4、5 状态为开或者为 on 则表示成功。gcc 各版本下载地址: https://ftp.gnu.org/gnu/gcc/输入密码(上面操作 bin/mysqld --initialize xxx 生成)3.下载 GCC 源码,选择合适的版本,本文以 gcc-13.2.0 为例。解压安装包 mysql-5.7.27-aarch64.tar.gz。修改 mysql 用户的登陆密码(这里根据需要设置,可以略过)的版本太老,里面的动态链接库没有。将解压后的目录改名为 mysql。

2025-02-24 16:45:52 932

原创 莫名奇妙的nginx请求偶发400

nginx的error日志里连接拒绝的没有了,accesslog里的400也没有了,其实error里显示了连接拒绝的ip:端口 ,我还好奇0.0.0.0:9999怎么ip都是0,原来配置的upstream问题。(3)客户nginx打开了request_body开关,但异常回调的数据看不到accesslog的请求体,只能看到一个http请求 400的错误。云平台----->客户nginx前置机 (或其他防火墙)---->客户内网nginx ---->java应用。有些数据回调正常,有少量数据回调异常!

2025-02-23 06:43:39 441

原创 揭秘MySQL:探索那些鲜为人知的数据类型宝藏

当我们的表的编码是utf8时,varchar(n)的参数n最大值是65532/3=21844[因为utf中,一个字符占 用3个字节],如果编码是gbk,varchar(n)的参数n最大是65532/2=32766(因为gbk中,一个字符占用2字节)。而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,3,…问题: 当我们的float(4,2)如果是一个有符号的,则表示范围是-99.99 ~ 99.99,如果float(6,3),请同学们说说范围是多少?

2025-02-23 04:57:38 553

原创 基于windows的mysql5.7安装配置教程

之前自己也是一个电脑小白,命名文件夹的名字的时候也没有在意,现在惨痛的经验让我知道了这个事情的重要性,友友们在安装这个mysql的时候,文件路径里面千万不要有这个空格!!!我的这个就是在安装一半的时候,这个命令行提示符(终端里面的疯狂报错),晚上找教程,发现这个可能是因为这个路径里面有这个中文或者是空格,后来发现自己的这个路径下面虽然是英文,但是两个单词之间有空格,真的是无比心痛啊啊啊啊,不得不重新配置,请各位小伙伴安装之前务必仔细检查这个安装的路径!!!

2025-02-22 04:17:52 1244

原创 SpringBoot集成Prometheus

现在2.3.0.RELEASE和1.5.4.RELEASE版本的服务,都可以成功暴露出一个给Prometheus拉取指标的接口,只需要在Prometheus上进行配置即可在Prometheus WEB UI上看到效果。但生产环境的真实情况,不可能只收集一个服务的指标,是否再需要一个代理服务,该服务用来收集所有微服务的指标后,再统一暴露接口给Prometheus,需要再根据生产环境使用情况考虑。启动服务后,访问/actuator/prometheus接口,可以看到Micrometer替我们收集到的指标。

2025-02-21 17:39:06 547

原创 SpringBoot - Cookie & Session 用户登录及登录状态保持功能实现

定义Session (会话控制),Session 对象存储特定用户会话所需的属性及配置信息SessionID:客户端第一次请求服务器时,服务器为客户端算出的一个值,存储在 Cookie 中,用于定位用户 Session 在服务器中的位置与 Cookie 的区别:Cookie 可以通过伪造来实现登录并进行一些 HTTP 请求,从安全性上来讲,Session 比 Cookie 安全性稍微高一些功能:提高安全性有效期:一般为半小时,可以根据需求设定缺点。

2025-02-21 15:45:28 661

原创 Spring Boot + Redis + Sa-Token

是 Sa-Token 框架中的一个接口,属于 Sa-Token 身份认证与授权框架的一部分。该接口提供了一些方法来实现自定义的身份认证和授权管理功能,特别是针对自定义的权限验证。

2025-02-21 02:38:23 942

原创 PostgreSQL在Linux环境下的常用命令总结

这条查询语句会列出正在使用 mydb 数据库的会话的进程 ID(pid)、用户名(usename)、数据库名(datname)、应用程序名(application_name)、客户端地址(client_addr)、客户端主机名(client_hostname)以及客户端端口(client_port)等信息。在一些较新的 PostgreSQL 版本中,理论上可以尝试使用 ALTER DATABASE 语句来更改数据库名称,但这种方法可能会受到一些限制,比如数据库的使用状态、权限等因素可能会影响其成功与否。

2025-02-21 01:17:20 728

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

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

2025-02-20 22:55:35 1083

原创 使用nvm管理node.js,在idea中配置node环境

安装nvm之后,如何在idea中配置node环境,找了半天才找到教程,因此记录一下。

2025-02-16 10:19:53 378

原创 【报表查询】.NET开源ORM框架 SqlSugar 系列

在我们实际开发场景中,报表是最常见的功能,业主爸爸们最喜欢对着大屏和报表指点江山。今天介绍如果通过sqlsugar层来处理报表数据。Sql可以方便的创建临时表并且可以将这些临时表进行JOIN操作。Sql可以方便的实现行列互转操作。以上2点用sqlsugar就能很好解决,下面我们将来展示几个最常见的实践示例。以前用原生SQL写报表查询真的太费劲了,现在有了ORM的加持,感觉不要太好。???.NET开源 ORM 框架 SqlSugar 系列???【开篇】.NET开源 ORM 框架 SqlSugar 系列。

2025-02-16 01:24:03 667

原创 【Python系列】Python 连接 PostgreSQL 数据库并查询数据

PostgreSQL 是一个高度可扩展的开源数据库管理系统,它支持 SQL(结构化查询语言)并提供许多现代数据库特性,如部分 ACID(原子性、一致性、隔离性、持久性)事务、触发器、视图、事务完整性、多版本并发控制等。PostgreSQL 的可扩展性允许用户自定义数据类型、函数、操作符等。

2025-02-15 23:06:31 913

原创 【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南

1.WEB,在英语中 web 表示网/网络资源(页面,图片,css,js)意思,它用于表示 WEB 服务器(主机)供浏览器访问的资源静态 web 资源(如 html 页面):指 web 页面中供人们浏览的数据始终是不变。动态 web 资源,比如 Servlet(java)、PHP 等。3.静态 web 资源开发技术Html、CSS,js 等4.常用动态 web 资源开发技术:Servlet、SpringBoot、SpringMVC、PHP、ASP.NET1 BS 开发。

2025-02-15 21:46:05 957

原创 sql中的regexp与like区别

其中,column_name是要进行匹配的列名,table_name是要查询的表名,pattern是要匹配的正则表达式模式。:灵活性强,能进行复杂模式匹配(如开头、结尾、字符集等)。The Begin?中第二个字符是 “a” 的所有行,你可以使用。:性能较好,适合简单模式匹配(如包含某字符)。(代表任意数量的字符,包括零个字符)和。例如,在 MySQL 中,可以使用。:高级字符串匹配,使用正则表达式。:简单字符串匹配,使用通配符。(代表一个任意字符)。

2025-02-15 20:14:52 561

空空如也

空空如也

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

TA关注的人

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