自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Laravel+Vue打造实时聊天室

本文介绍了一个基于Laravel和Vue.js的即时聊天室实现方案。后端使用Laravel构建API服务,通过Pusher/Socket.io实现WebSocket实时通信;前端采用Vue.js框架,利用Laravel Echo监听消息事件。核心实现包括:1) Laravel配置广播驱动和数据库;2) 创建Message模型和事件广播机制;3) Vue组件处理消息发送与实时接收。系统架构清晰,实现了用户认证、消息存储和实时推送功能,并提供了扩展建议如消息历史和在线状态功能。该方案为构建实时聊天应用提供了完整

2026-03-25 23:16:38 140

原创 Laravel vs ThinkPHP:PHP框架终极对决

Laravel与ThinkPHP对比摘要:Laravel是国际化框架,强调优雅语法和现代PHP实践,拥有强大Eloquent ORM和活跃国际社区,适合中大型项目;ThinkPHP是国产框架,注重快速开发和中文支持,学习曲线平缓,适合中小型国内项目。两者在路由、模板引擎等方面各有特色,选择取决于项目规模、团队技术栈和开发偏好。(149字)

2026-03-25 21:32:48 303

原创 ThinkPHP3.x框架核心特性解析

ThinkPHP3.x是一个高效的PHP开发框架,采用MVC架构设计,提供数据库ORM操作、模板引擎和路由功能。支持链式查询、事务管理和多级缓存,具备SQL注入防护机制。通过行为扩展和类库集成实现灵活扩展,内置调试日志系统。其简洁的语法和模块化设计特别适合快速开发中小型应用,显著提升开发效率。典型应用包括控制器处理请求、模型操作数据、视图展示结果的三层协作开发模式。

2026-03-25 19:45:42 333

原创 ThinkPHP6.0核心特性深度解析

ThinkPHP6.0作为最新稳定版本,重点优化了性能与开发规范。核心改进包括:全面遵循PSR标准(日志、自动加载),重构路由系统支持中间件绑定和嵌套分组,强化依赖注入(自动解析、接口绑定)。ORM提升关联查询效率,新增动态作用域功能。性能方面实现懒加载和模板编译缓存,同时增强多语言支持、事件系统和异常处理。升级需注意命名空间变更,建议使用官方迁移工具逐步调整。该版本通过模块化设计显著提升了开发效率和系统性能。

2026-03-25 14:15:16 363

原创 PHP vs Python:编程语言终极对决

PHP与Python是两种主流编程语言,主要差异如下:PHP专为Web开发设计,语法以$符号和{}为特征,弱类型系统,适用于WordPress等CMS系统;Python作为通用语言,强调可读性和简洁语法,强类型,广泛应用于Web、数据科学和AI领域。PHP通过Composer管理依赖,以Laravel等框架见长;Python则拥有丰富的科学生态(如Pandas、TensorFlow)。PHP适合快速Web开发,Python更适合跨领域项目。选择取决于具体需求:内容网站选PHP,数据分析或AI选Python。

2026-03-24 18:43:09 296

原创 PHP vs Java:谁才是你的开发首选?

PHP和Java是两种主流编程语言,主要区别在于:PHP是动态脚本语言,适合快速开发中小型网站,语法灵活,解释执行;Java是静态面向对象语言,强调平台无关性,需编译为字节码运行,适合企业级应用。PHP在轻量级Web请求中响应更快,Java在高并发场景性能更优。PHP生态以Laravel等框架为主,Java则拥有Spring等成熟体系。选择依据项目需求:PHP适合敏捷Web开发,Java更适合复杂系统。

2026-03-24 18:18:05 313

原创 PHP vs Go:30秒看懂两大语言核心差异

PHP与Go语言对比:PHP是动态类型脚本语言,专注Web开发,适合中小型网站;Go是静态类型编译语言,强调高并发与系统编程。PHP依赖解释器执行,生态成熟(如Laravel);Go编译为二进制文件,原生支持协程,适合微服务与云原生。PHP语法灵活,Go设计极简。选择依据:PHP适合传统Web开发,Go更适合高性能并发场景。

2026-03-24 18:11:36 317

原创 PHP vs C语言:核心差异全解析

PHP和C语言的区别主要体现在设计目的和应用场景上。PHP专为Web开发设计,适合构建动态网站,语法简单且支持自动内存管理;C语言则是通用系统编程语言,适用于底层开发,性能更高但需要手动内存管理。PHP解释执行,适合快速开发;C语言需编译,适合高性能应用。PHP更适合Web初学者,C语言更适合系统级开发者。根据项目需求选择:Web开发用PHP,系统编程用C语言。

2026-03-24 17:33:47 317

原创 PHP vs C++:编程语言终极对决

PHP与C++核心差异对比:PHP是动态弱类型的解释型语言,内置Web支持且自动内存管理,适合快速Web开发;C++作为静态强类型的编译语言,支持底层操作和手动内存管理,适用于高性能系统开发。二者在类型系统、执行方式、内存管理和应用场景上存在根本性差异。

2026-03-24 17:23:46 344

原创 MySQL - Navicat自动备份MySQL数据

对于从事IT开发的工程师,数据备份我想大家并不陌生,这件工程太重要了!对于比较重要的数据,我们希望能定期备份,每天备份1次或多次,或者是每周备份1次或多次。如果大家在平时使用Navicat操作数据库,Navicat是自带备份功能的,操作如下首先,来设置一下Navicat保存备份以及SQL语句的路径博主使用Navicat16新建或者编辑连接实例时,点击“”,选择“”,替换为需要保存的地址即可。

2026-03-18 03:02:53 198

原创 docker离线安装及部署各类中间件(x86系统架构)

此文主要针对需要在x86内网服务器搭建系统的情况。

2026-03-18 00:37:47 218

原创 SpringSecurity 实现token 认证

Autowired@Override//1、获取请求头携带的tokenif(!//不需要token的路由可以直接放行return;response.getWriter().write(JSON.toJSONString(Result.failed(401,"token 非法","")));return;//放行。

2026-03-17 17:25:13 21

原创 Spring 核心技术解析【纯干货版】- Ⅶ:Spring 切面编程模块 Spring-Instrument 模块精讲

Spring-Instrument 模块,是 Spring 框架中一个用于提供类加载器增强和字节码操作支持的模块,主要围绕 类加载时织入(Load-Time Weaving, LTW) 提供功能。它是与 Spring AOP 和 Spring AspectJ 支持密切相关的模块之一,常被用于需要动态修改类行为的场景。

2026-03-17 15:09:18 292

原创 Redis--模糊查询--方法实例

说明本文介绍Redis模糊查询的方法。官网网址Redis模糊查询键的方法Redis提供了两种模糊查询键的方法:KEYS , SCAN。推荐用SCAN,下边会介绍。模糊查询的通配符KEYS和SCAN都支持glob通配符*:通配任意多个字符:通配单个字符[]:通配括号内的某一个字符示例hllo匹配 hello, hallo and hxlloh*llo匹配 hllo、heeeelloh[ae]llo匹配 hello、hallo不匹配 hilloh[^e]llo。

2026-03-17 12:40:47 176

原创 MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入

基本用法:ON DUPLICATE KEY UPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突(即已存在相同的唯一键值),则会执行更新操作,而不是抛出异常或忽略该条数据。这个语法可以大大简化我们的代码,减少不必要的判断和查询操作。用法总结1:on duplicate key update 语句根据主键id或唯一键来判断当前插入是否已存在。2:记录已存在时,只会更新on duplicate key update之后指定的字段。

2026-03-17 04:14:35 317

原创 java 进阶系列

地址:http://blog.csdn.net/sunhuaqiang1/article/details/45537809。地址:http://blog.csdn.net/sunhuaqiang1/article/details/49951031。增加:参考:http://www.cnblogs.com/janneystory/p/5758958.html。

2026-03-17 01:36:05 201

原创 【JSqlParser】Java使用JSqlParser解析SQL语句总结

上面的代码虽然不少,但实际上真正需要熟悉的只有一个,就是直接调用CCJSqlParserUtil.parse(sql);去获得Statement,然后通过Statement去操作和获取解析后的SQL中的内容,非常简单方便实际应用场景说了那么多JSQLPARSER的使用,或许很多朋友并不能联想到有哪些具体可以用到它的地方,实际上想要开发一个优秀的软件产品,那么细节是少不了的,SQL是BS软件的本质之一,那么针对SQL,我们能做的还有很多,以下列举几个常见的场景SQL审计和分析。

2026-03-15 03:42:47 377

原创 SpringMVC新版本踩坑[已解决]

找了一晚上问题所在,发现可能是新版本调整了参数,而spring会自动帮助设置,导致编译时选项“-参数”被禁用。也就是错误信息中的最后提示:Ensure that the compiler uses the ‘-parameters’ flag.总结:在做参数传递时,需要多留心@PathVariable注解的使用,有时严格按照其使用方法也许是一个好的习惯。大部分场景这个设置生效的,但是进行测试后,发现仍然没有用。但是在尝试后并未发现有作用,于是继续寻找其他解决方法。至此,终于在各种尝试中解决了问题。

2026-03-15 01:09:17 256

原创 SpringBoot中使用TraceId进行日志追踪

用于标识某一次具体的请求ID。当用户的请求进入系统后,会在RPC调用网络的第一层生成一个全局唯一的traceId,并且会随着每一层的RPC调用,不断往后传递,这样的话通过traceId就可以把一次用户请求在系统中调用的路径串联起来。在分布式系统中,一个请求可能会涉及多个服务和组件的调用,而traceId可以帮助我们追踪和查看整个请求的流程和调用链。

2026-03-14 19:27:33 166

原创 Spring Data 什么是Spring Data 理解

Spring Data的使命是为数据访问提供熟悉且一致的基于Spring的编程模型,同时仍保留底层数据存储的特殊特性。它使数据访问技术,关系数据库和非关系数据库,map-reduce框架和基于云的数据服务变得简单易用。这是一个伞形项目,其中包含许多特定于给定数据库的子项目。这些项目是通过与这些激动人心的技术背后的许多公司和开发人员合作开发的。: 致力于减少数据访问层(DAO)的开发量。开发者唯一要做的,就只是声明持久层的接口,其他都交给Spring Data JPA 来帮你完成!

2026-03-14 18:24:20 320

原创 springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38819)

刚解决Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38816)没几天,又来一个新的,真是哭笑不得啊。不过没关系,springboot官方又发布了新的版本3.3.5,将项目升级到该版本即可从springboot2.x升级到3.x请查看。

2026-03-13 21:37:07 175

原创 怎么下载安装yarn

【代码】怎么下载安装yarn。

2026-03-13 02:07:04 235

原创 三分钟内快速完成MySQL到达梦数据库的迁移

由于业务需求要求数据库国产化,因此近期需要将数据从mysql数据库中迁移到国产达梦数据库中。本次使用达梦新的数据库开发和管理工具–SQLark百灵连接进行迁移,我也是在官方社区里看到大家推荐才试的,使用SQLark迁移30G左右的数据,几分钟就搞定了,而且**一次迁移成功率高达 90% 以上!

2026-03-12 12:08:33 151

原创 【golang学习之旅】使用VScode安装配置Go开发环境

也就是在一个平台上可以生成在另一个平台上运行的程序,比如在32位的windows操作系统环境中,生成可以在64位Linux操作系统上运行的二进制程序,通常需要借助第三方的工具才能够实现。在go install 完成后,用于保存go语言标准库的所有归档文件(比如fmt包被构建安装后,将生成一个fmt.a归档文件),同时也包含了和平台(windows,linux,mac)项目的一些目录,不同的操作系统看到不一样。,如果将Go安装在其他目录中,而需要将GOROOT的值修改为对应的目录。新建GOPATH变量。

2026-03-12 09:44:24 205

原创 springboot集成onlyoffice(部署+开发)

最近有个项目需求是实现前端页面可以对word文档进行编辑,并且可以进行保存,于是一顿搜索,找到开源第三方onlyoffice,实际上onlyOffice有很多功能,例如文档转化、多人协同编辑文档、文档打印等,我们只用到了文档编辑功能。目 录前言1、onlyoffice的部署2、代码逻辑开发2.1、前端代码2.2、后端代码3、问题总结3.1、访问案例失败3.2、加载word文档失败3.3、系统后端有token验证问题3.4、使用文档地址访问问题4、后记开始敲黑板了。

2026-03-11 23:12:36 428

原创 Spring Boot应用关闭分析

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

2026-03-11 20:45:38 397

原创 MYSQL批量UPDATE的两种方式

建议使用方式一,或者其优化方式(JDBC批处理)。各位也可以与AI对话看看给出的建议是什么。有问题一定要留言啊各位。及时发现及时改错。

2026-03-10 08:11:38 164

原创 knife4j+springboot3.4异常无法正确展示文档

通过分析异常日志发现是ControllerAdviceBean类报错,在springboot3.3.5时spring-web版本是6.1.14,springboot3.4版本是6.2.0版本。结论:期待knife4j-openapi3-jakarta-spring-boot-starter早日升级,兼容最新版本的spring;knife4j-openapi3-jakarta-spring-boot-starter版本。原来使用springboot3.3.5版本,先升级到3.4.0版本。

2026-03-10 04:14:25 227

原创 解决no main manifest attribute错误

程序运行的入口是main方法,当我们使用java Hello命令,虚拟机就可以根据Hello.class文件中的main方法,来运行程序。JAR(Java Archive)文件是一种打包文件格式,它允许你将多个 Java 类文件、相关的元数据和资源(如文本、图片等)打包到一个单一的文件中,以便于分发和部署。元数据主要指的是清单文件(MANIFEST.MF) ,这是一个可选文件,用来提供关于jar文件的额外信息。这里的程序打包是使用的maven,那就使用maven的插件来完成就好了!

2026-03-09 07:35:15 416

原创 四、nginx的优化和location匹配规则

2、如下图片显示,如果我们主机是4核的,那么每个进程进来都需要内核来处理,可能会造成同一个进程请求可能被不同内核处理(跳频),所以需要我们把进程绑定到cpu上,一个进程有一个cpu处理,防止跳频。1、确保连接时被可靠的关闭:即时是四次挥手之后,对方有可能还有数据未处理完毕,在timewait阶段可以保证数据依然被正确的处理,防止旧的数据包影响其他新的连接。2、避免出现连接复用的问题:如果timewait不存在,或者时间较短,旧的连接可能依然处于网络之中,有可能被认为新的连接。

2026-03-09 03:35:48 208

原创 【Spring Boot 实现 PDF 导出】

选择 iText如果你需要生成复杂的PDF文档,尤其是涉及到安全性和高级功能的企业级应用。iText 提供了最全面的功能和最佳的性能,但需要注意其商业许可要求。选择 Apache PDFBox如果你希望保持完全开源,并且只需要生成简单的PDF文档。PDFBox 轻量级且易于上手,适合小型项目或对性能要求不高的场景。选择 JasperReports如果你需要生成复杂的报表,特别是涉及到分组、图表、子报表等功能。JasperReports 是一个功能强大且成熟的工具,适合企业级应用。

2026-03-08 13:19:24 392

原创 sql中判断一个字段是否包含一个数据的方法有哪些?

问题:查询名字里带 “i” 的人。

2026-03-08 09:04:04 38

原创 Springboot中mybatis的使用

2.在启动项DemoApplication的同级文件夹或者子文件夹下创建一个Student类,变量应和数据库的一 一对应,并建立get和set方法。**1.**把启动项名字改名为application.yml,yml格式的比较直观,并写下如下代码。SQL的JDBC API和Mybatis Framework和Mysql Driver。启动成功后可以去postman/apifox测试一下接口。,即可看到数据库存储的信息(JSON格式)。新建一张表,准备些基本数据,例子如下。选择2.x版本就行,没必要选太高。

2026-03-07 06:38:12 164

原创 ShardingSphere-jdbc 5.5.0 + spring boot 基础配置 - 实战篇

shardingsphere 5.5.0移除了sm4算法,两种方式解决:1、使用官方shardingpshere plugin,找到相关组件依赖引用即可,2、自己添加sm4算法代码SPI实现。版本加密算法接口升级了,以下sm4的SPI代码不适用,后续推出适配版本)。增加spi扩展SM4算法代码/***/static {@Getter@Override。

2026-03-07 03:04:10 208

原创 MySQL数据的增删改查(一)

示例:我们查询 id 和 年龄:

2026-03-06 10:57:10 343

原创 LangChain-08 Query SQL DB 通过GPT自动查询SQL

我们需要下载一个LangChain官方提供的本地小数据库。

2026-03-06 03:46:00 216

原创 如何使用固定公网地址访问多个本地Nginx服务搭建的网站

访问http://127.0.0.1:9200/登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。接下来,我们通过强大的且稳定的内网穿透工具cpolar,将本地nginx服务暴露至公网环境,以实现穿透多个站点端口需求,无需公网IP,也不用设置路由器。提示更新隧道成功,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为保留成功的二级子域名,将其复制下来。来访问两个站点,测试访问成功,现在该公网地址不会随机变化了。

2026-03-05 04:46:38 350

原创 【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则

本地电脑安装的sql server数据库可视化工具ssms连接到外网服务器的sql server数据库,实现本地化远程链接数据库进行管理和操作。

2026-03-05 01:02:08 245

原创 TypeScript 与后端开发Node.js

以 Express 框架为例,在 TypeScript 中定义路由时,可以先创建一个路由模块,然后明确路由处理函数的类型。// 定义一个获取用户信息的路由// 这里可以假设从数据库等地方获取用户信息并返回,暂时模拟返回一个固定信息});首先导入了 express 框架以及 express 中的 Request 和 Response 类型定义,它们分别用于描述 HTTP 请求和响应的相关结构和属性类型。

2026-03-04 05:01:04 230

原创 SpringBoot接口防抖(防重复提交),接口幂等性,轻松搞定

接口幂等性是指在分布式系统中,对于相同的请求,无论请求多少次,都应该返回相同的结果。这意味着,如果请求已经处理完毕,那么重复请求应该返回相同的响应,而不应该产生额外的副作用。这种特性对于确保系统的稳定性和一致性非常重要,尤其是在处理并发请求和网络异常的情况下。在编程中,可以通过一些特定的设计来实现接口幂等性,例如使用全局唯一的ID来标记请求,或者使用乐观锁机制来防止重复处理等。

2026-03-04 01:16:17 172

空空如也

空空如也

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

TA关注的人

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