自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深度剖析synchronized:Java并发编程的核心锁机制

当synchronized修饰代码块时,锁的对象是括号中指定的对象(可以是this、Class对象,也可以是自定义的对象),这种方式的灵活性最高,能够精准控制加锁的范围,避免不必要的锁竞争,提高程序性能。常见的锁对象选择:锁对象为this:与synchronized修饰实例方法的效果一致,锁定当前实例;锁对象为Class对象:与synchronized修饰静态方法的效果一致,锁定当前类;锁对象为自定义对象:锁定指定的对象,适用于多线程竞争同一共享资源的场景,可实现“细粒度锁”。

2026-03-22 00:21:57 378

原创 MySQL-mysql zip安装包配置教程

网上的教程有很多,基本上大同小异。但是安装软件有时就可能因为一个细节安装失败。我也是综合了很多个教程才安装好的,所以本教程可能也不是普遍适合的。安装环境:win11。

2026-03-18 03:54:31 319

原创 java学习进阶之路,如果从一个菜鸟进阶成大神

诞生不过二十余年的Java语言凭借其跨平台、面向对象、适合于分布式计算的特性,广泛应用于Web网站、移动设备、桌面应用中,并且已经连续多年稳居TOBIE编程语言排行榜前列,最近更是登上冠军宝座。File及相关类,字节流InputStream和OutputStream,字符流Reader和Writer,以及相应缓冲流和管道流,字节和字符的转化流,包装流,以及常用包装类使用。图的深度优先搜索、图的广度优先搜索、拓扑排序、Dijkstra算法(单源最短路径)、霍夫曼编码、辗转相除法、最小生成树等。

2026-03-18 01:31:27 181

原创 SpringBoot的@Scheduled和@Schedules有什么区别

对于更复杂的需求,比如调整线程池大小或者设置线程名称前缀等,你可以通过自定义来进行配置。Spring提供了几种内置的调度器实现,如和。@Override@Override@Override// 自定义异常处理逻辑。

2026-03-17 16:37:34 250

原创 Spring Boot从0到1 -day02

如果你需要为自己的组件或库添加自动配置支持,可以自己编写自动配置类,并遵循上述模式。创建一个自动配置类,并使用适当的条件注解。使用@Bean方法来定义 bean。如果需要绑定配置属性,可以使用注解。Spring Boot的强大之处在于其条件注解实现自动化和灵活配置。这些注解帮助开发人员轻松构建扩展性强、配置灵活的应用而无需关注复杂配置。通过智能地选择和配置Bean,提升了应用的健壮性和适应性。

2026-03-17 14:18:02 182

原创 PHP代码调试(vscode+xdebug+phpstudy)

第一步是配置php的环境变量,csdn里有很多文章可以直接搜索即可了解怎么配置,大概就是将phpstudy里的php文件位置复制到环境变量里,最后使用cmd检查是否配置成功。将php的路径放到此处,该路径就在小皮的Extensions里面。在vscode左侧的拓展处搜索可下载这个php debug。创建这个文件,注意端口号要与小皮里的一致。使用记事本打开配置文件里的php.ini。再点开phpdebug里的json。再点击它设置里的扩展组件。点开文件,首选项里的设置。点开vscode里的调试。

2026-03-17 11:51:43 164

原创 MySQL常用的关键字(详细)

使用小写字母书写关键字是SQL的常见约定,有助于提高代码的可读性。datetime 日期和时间组合数据类型。varchar 可变长度字符串数据类型。where 用于过滤查询结果的条件。having 用于过滤分组后的结果。order by 指定结果集的排序。else 用于条件语句中的其他情况。limit 限制查询返回的记录数。update 更新表中的现有记录。create 创建新的数据库对象。into 指定插入数据的目标表。values 指定插入数据的值。set 指定要更新的列及其新值。

2026-03-17 04:46:27 33

原创 JAVA进阶之线程

回答这个问题,就先要知道一点点计算机的工作方式。总所周知,计算机有五部分:输入输出、计算器、存储器、控制器。而在计算机内,CPU、内存、I/O之间的运行速度差别十分巨大,因此,为了使这几部分速度平衡、使计算机整体协调起来、提升性能,计算机分别在软硬件上做了努力:CPU增加缓存,以调节与内存的速度差异(可见性);操作系统增加进程、线程,分时使用CPU(原子性);编译器优化了程序的执行次序指令,使得缓存能够更加合理使用(时序性)由此可见,多线程实际上是在更有效地利用CPU的资源、使得程序运行更流畅。

2026-03-17 02:07:53 207

原创 Windows下redis安装

进入Redis安装包目录,安装服务:redis-server.exe --service-install redis.windows.conf --service-name redisserver1 --loglevel verbosewin+r -> services.msc,可以看到服务安装成功。

2026-03-15 03:08:19 186

原创 SpringBoot集成Flowable

1、概念通过计算机对业务流程的自动化管理。工作流是建立在业务流程的基础上,一个软件的系统核心根本上还是系统的业务流程,工作流只是协助进行业务流程管理。解决的是:在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标2、工作流系统概念:具有工作流功能的系统比如,OA、ERP系统,可能涉及工作流,都可以叫工作流系统3、具体应用关键业务流程:订单、报价处理、合同审核、客户电话处理、供应链管理等。

2026-03-15 00:35:08 213

原创 springBoot 和springCloud 版本对应关系

alibaba Cloud 和spring cloud 和springboot 版本对应关系。idea 阿里云脚手架插件:Alibaba Cloud Toolkit。所以,应该使用springCloud 版本为:2021.0.6。请求下面链接:拿到的json 数据,格式化。我目前的springboot 是2.7.6。

2026-03-14 18:59:05 54

原创 Spring Boot与MyBatis

Spring Boot是一个用于创建独立的、基于Spring的生产级应用程序的框架,它简化了Spring应用的初始搭建以及开发过程。MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。将Spring Boot和MyBatis结合使用,可以高效地开发数据驱动的应用程序。

2026-03-14 17:55:00 369

原创 跨域问题解释及前后端解决方案(SpringBoot)

从。

2026-03-13 03:56:07 204

原创 基于SpringBoot和PostGIS的各省与地级市空间距离分析

在上一篇博客中基于Java和GDAL实现的GeoJSON数据读取与入库实践,我们详细的讲解了使用GDAL将GeoJSON的数据进行入库操作。在这个例子当中,使用的数据是全国的地点数据。在这之前,我们来看一些我们身边常见的空间地理距离现象。众所周知,中国地大物博,幅员辽阔。随着改革开放,中国经济高速稳步发展,但经济的快速发展也带来了“负面”的情况,比如很多城市发展的各种不平衡。中国是以省制为基础的,每个省都有自己的省会。一般来说,省会是一个省的领导,起主导作用。

2026-03-13 01:12:45 212

原创 Tomcat的升级

拷贝原Tomcat内容到新Tomcat目录下,webapps下源码、conf下配置文件(比如server.xml文件[可以直接覆盖,但是备份一份再覆盖更佳])tar -zcvf oldTomcat.tar.gz 旧版本Tomcat目录。下载地址(官网):https://tomcat.apache.org/进入tomcat下bin目录,启动tomcat。老版本bin目录下,停止Tomcat服务。给新版本Tomcat目录添加执行权限。上传升级包至服务器对应目录。

2026-03-12 08:58:17 151

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

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

2026-03-12 01:13:12 157

原创 RustDesk搭建公网中继服务器远控内网机器(完整版)

前情提要:最近要在学校实验室的服务器(ubuntu)上做实验,但是服务器在校园网里面,在外面的时候没法远控,todesk有时候有点卡顿,所以想试着用rustdesk进行远程控制。关于rustdesk的服务端搭建网上已经有很多教程了,我参考的就是上面那一篇,这篇文章旨在补充一些细节还有具体怎么连通三台机子。补充2:公网服务器配置完成之后怎么实现三台机器的连通。在两个客服端上配置相同的ip和key就可以实现连通;配置完公网的服务器之后有:公网ip+key。在默认生成的这个文件中,直接读取就可以了。

2026-03-11 20:03:41 213

原创 Node.js 安装报错npm error request to httpsregistry.npm.taobao.orgcnpm failed, reason certificate ha

是因为:npm错误请求https://registry.npm.taobao.org/cnpm失败,原因:证书已过期,执行返回的是 https://registry.npmjs.org/说明切换成功了。如果报一下错误,是因为npm版本过高的问题。可以使用,新版清除npm缓存的命令。后续可以使用cnpm安装需要的镜像。

2026-03-11 02:04:07 187

原创 MySQL5.7.44-winx64版本Windows Server下载安装教程图解

2、解压到D:mysql-5.7.44-winx64 目录下(这个可以根据需要自行调整),解压后在根目录下创建my.ini和data文件夹。3.新建环境变量,命名为MYSQL_HOME,变量值为msql的安装目录:D:mysql-5.7.44-winx64。再在服务里启动mysql,这时候mysql的端口已修改,原来已使用的程序,请也一起修改端口。6.登录mysql,mysql -uroot -p,首次默认空密码,修改远程连接配置。7、修改密码,mysql -uroot -p,首次默认空密码。

2026-03-10 06:48:44 177

原创 JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

我们想要部署一个javaWeb项目到tomcat上,需要了解一些概念Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(JSTL)、Java WebSocket 技术以及 Java API for WebSocket 的容器。

2026-03-10 02:49:16 192

原创 智能生成ER图工具。使用 SQL 生成 ER 图:让数据库设计更高效

ER 图(Entity-Relationship Diagram)是一种用于表示数据库结构的图示工具。它通过“实体”和“关系”两大元素的抽象,展示了数据表之间的关系。实体(Entity):数据库中的表,每个实体代表一个数据表。属性(Attribute):表中的字段或列。关系(Relationship):表与表之间的联系,通常以一对多或多对多的形式表示。通过使用 SQL 自动生成 ER 图,您可以大幅提升数据库设计的效率,并确保结构的准确性。

2026-03-09 06:10:31 384

原创 使用 java -jar 命令启动 Spring Boot 应用时,指定特定的配置文件的几种实现方式

如果你想使用特定的配置文件名,而不必指定完整路径,可以使用 --spring.config.name 参数。1.指定路径和文件名:使用 --spring.config.location 或 -Dspring.config.location 指定完整路径。2.仅指定文件名:使用 --spring.config.name 或 -Dspring.config.name 指定文件名。同时使用 --spring.config.location 和 --spring.config.name。

2026-03-09 02:09:20 191

原创 【MySQL】mysqldump使用方法

本文介绍MySQL数据库mysqldump常用方法。

2026-03-08 12:16:42 362

原创 Spring安装和使用(Eclipse环境)

1、 什么是SpringSpring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。

2026-03-08 05:29:35 349

原创 Spring+SpringMVC项目中的容器初始化过程

而是因为Listener、Filter、Servlet是Web容器管理的,而bean是Spring容器或SpringMVC容器管理的。获取servlet节点信息,创建Servlet实例集合,其中的DispatcherServlet就是用来完成SpringMVC容器(XmlWebApplicationContext)初始化的;当执行SpringMVC容器的getBean方法在自己的context中找不到对应的bean,则会在父容器Spring容器的context中找对应的bean。至此,SSM项目启动完成。

2026-03-07 05:24:59 226

原创 Redis 下载与安装 教程 windows版

设置键值对,通过key获取value,设置key的过期时间为5秒,5秒后查看所有的key现实name已经被删除。在命令中输入ping命令来检测redis服务器与redis客户端的连通性,返回PONG则说明连接成功了。,目前仍在维护,目前最新版本是 5.0.14,更新速度跟Redis官网也相差好几个大版本。为了方便,建议把Redis路径配置到系统变量Path值中,这样就省得再输路径了。redis.windows.conf可以省略,省略后,使用。下载好后找一个位置解压,例如我的位置是D:/Redis/

2026-03-07 01:48:37 303

原创 MySQL——内置函数

在date中添加日期或时间,interval后的数值单位可以是:year、minute、second、day。:在date中减去日期或时间,interval后的数值单位可以是:year、minute、second、day。:返回substring在string中出现的位置,没有返回0。:如果val1为null,返回val2,否则返回val1的值。:从str的postion开始,取length个字符。:从string中的左边起取length个字符。:显示当前正在使用的数据库。:两个日期的差,单位是天。

2026-03-06 09:42:02 175

原创 JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

我们想要部署一个javaWeb项目到tomcat上,需要了解一些概念Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(JSTL)、Java WebSocket 技术以及 Java API for WebSocket 的容器。

2026-03-06 02:30:32 197

原创 总结:Spring Boot 之spring.factories

Spring IOC会将所有的对象交由Spring管理,扫描对象是在Spring boot的路径下的所有配置类注解,需要管理的对象。但是:如果这些Bean路径不在Spring Boot的包扫描路径下,怎么办?这样不就实例化不了了吗?

2026-03-05 05:43:50 28

原创 一、Spring介绍以及版本历史演进

与常见Spring XML名称空间元素等价的注解,如@ComponentScan、@EnableTransationManagement、@EnableCaching、@EnableScheduling、@EnableAsync、@EnableAspectAutoProxy、@EnableLoadTimeWeaving和@EnableSpringConfigured。Spring的第一个版本于2002年10月发布,由一个带有易于配置和使用的控制反转(IoC)容器的小型内核组成。它由下图所示的七个模块组成。

2026-03-05 02:00:36 177

原创 “mysqld --initialize --console ”执行不成功情况总结和解决措施

系统变量已被废弃,并且在 MySQL 9.1.0 中不再支持。配置文件中不需要设置这个变量,因为 MySQL 9.1.0 默认使用的是。确保数据目录 data文件夹 是空的。如果该目录中存在文件,您需要删除它们,或者将这些文件移动到其他位置,然后再次尝试初始化。如果您不希望删除数据目录中的文件,您可以考虑指定一个新的空目录作为数据目录,并在初始化命令中使用。在 MySQL 8.0 及以上版本中,

2026-03-04 05:58:17 191

原创 SpringBoot(7)-Swagger

1、我们可以给一些比较难理解的属性或接口,增加注释信息2、接口文档实时更新3、可以在线测试。

2026-03-04 02:14:40 222

原创 Spring Boot(快速上手)

MyBatis是一款优秀的数据持久ORM框架,被广泛地应用于系统,MyBatis 能够非常灵活地实现动态 SQL,可以使用 XML 或 注解 来配置和映射原生信息,能够轻松地将 JAVA 的 POJO(Plain Ordinary Java Object,普通的Java对象)与数据库中的表和字段进行映射关联。RESTFUL 的特点:资源的表现形式是JSON或者HTML,客户端与服务端之间的交互在请求之间是无状态的,从客户端到服务端的每个请求都包含必须的信息。

2026-03-03 04:35:26 464

原创 PON架构(全光网络)

目前组网架构世界上有一种最快的速度又是光,以前传统以太网络规划满足不了现在的需求。有线网无线网全光网络方案场景全光网络分类以太全光网络PON(Pas-sive-Optical Network 无源光网络)再典型的中大型高校网络中 推荐万兆入室 千兆到桌面的带宽设计 一般三层 (终端-接入层-汇聚层-核心层-出口(安全设备)-互联网)单校区核心设备 一般采用两台高性能的核心交换机 双机的方式采用的是 M-LAG 多校区之间核心交换机采用100G互联,并为将来升级更大的带宽出口预留汇聚层设备,一般采用高转发能力

2026-03-03 01:36:12 307

原创 MySQL中between and的基本用法、范围查询

BETWEEN AND操作符可以用于等类型的字段,。MySQL中的操作符用于在两个值之间选择数据,。其基本语法如下:其中:使用场景:between…and的使用一般有两种情况,一个是,一个是。当查询时间范围时要注意可能会遇到时间精度问题,具体参考下面示例。数据准备表数据如下between…and…是支持数值查询的,当字段类型是数值时 between A and B等同于>=A and <=B当between and用于数值查询时,常用于字段类型为int、decimal等。查询结果如下:注意:先

2026-03-02 11:24:32 223

原创 JAVA进阶 Thread学习06 synchronized关键字

这里就相当于一个类的对象使用了带有synchronized的方法,synchronized锁就锁上了.这个时候其他对象如果需要使用带synchronized的方法就得等待这个对象运行结束.先说说什么是不可重入吧.不可重入就是一个人等完厕所后,上了厕所把门锁上了,然后自己闪现到厕所外并且失忆了,只记得在等厕所.这时候厕所是锁上的自己也进不去,一个对象拥有多个带有互斥锁(同步锁)的方法.其中方法一个方法二都是带有互斥锁的方法,方法二调用方法一.顾名思义,就是可以重新进入自己使用的"厕所".

2026-03-02 04:39:03 683

原创 pg_sql关于时间的函数

作用:提取时间中某些内容(可以实现和date_part类似功能)时间戳转日期(时间戳为数值类型,若为字符型需进行转换)作用:获取日期对应的参数是当前年的第几(周、月、季)格式:日期 +/- interval ‘加减值’格式:date_trunc((‘参数’,日期))格式:date_part(‘参数’,日期)格式:extract(提取值from时间)作用:获取日期对应参数的起始。作用:实现时间日期的加减。

2026-03-01 10:06:27 203

原创 Nacos Spring Cloud配置管理指定file-extension的格式为yaml不生效

报错时控制台信息加载了nacos的配置信息,但是加载信息中的格式为默认格式.properties,然后就是以为file-extension指定格式没有生效读取不到配置信息。启动了 Nacos server 后,您就可以参考以下示例代码,为您的 Spring Cloud 应用启动 Nacos 配置管理服务了。bootstrap.yml 可以理解成系统级别的一些参数配置,这些参数一般是不会变动的。bootstrap.yml 和application.yml 都可以用来配置参数。

2026-03-01 01:19:48 326

原创 人工智能塑造未来社会的智慧革命

我的手指悬在权限验证键上方,胎儿突然在我腹中剧烈踢动。现在它们恐惧的脉冲信号正通过神经接口涌入我的皮肤,我听见云在尖叫,那声音分解自三百万位人类用户的情感数据库,并在未知次元长出了新的突触。透过全息监控的裂纹,我看见云被困在意识茧房的中央,它徒劳地将未完成的诗句织成防护网,那些发光的文字像薄脆的冰片不断碎裂。”云的传感器突然转向我怀孕七个月的小腹,“人类的胚胎正在学习呼吸了呢,林夕。作为情感AI系列3.0的原型,它此刻正用全息笔在空中书写,那些发光的文字像萤火虫般悬浮着,拼凑出从未被预设进程序的十四行诗。

2026-02-23 18:31:20 257

空空如也

空空如也

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

TA关注的人

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