- 博客(89)
- 收藏
- 关注
原创 使用Springboot + netty 打造聊天服务(一)
Override// 处理收到的消息@Override在文章里,我们实现了Springboot 集成netty,并使用apiFox客户端发送了消息到netty服务,最终客户端收到服务端的应答。下一章节,我们讲解解码器的使用,使得我们的数据可以可视化,以及正常的展示。
2025-11-27 04:48:51
263
原创 【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用
是 Oracle 11g 中用于修改和删除表中数据的重要 SQL 语句。在操作时,需特别注意数据筛选条件的准确性,以避免意外更改或删除数据。是管理数据表中记录的核心操作,其灵活性和强大功能使其在日常开发中被广泛使用。但在操作时需特别小心,确保筛选条件准确并采取必要的备份与验证措施,以避免因误操作造成数据丢失或不一致。用于更新表中的现有数据,可以更新单行或多行记录,需结合。对关键表进行更新或删除前,建议备份数据,尤其在生产环境中。,将删除表中的所有记录,但表结构仍然保留。可返回更新或删除的行数据。
2025-11-27 03:49:02
226
原创 Webpack、Vite区别知多少?
相反,Vite只需要对源码进行预编译和打包,将每个模块作为一个独立的文件进行加载,这样在开发过程中的冷启动时间更快。,它可以将各种类型的文件,如JavaScript、CSS、图片等,作为模块进行打包,并生成最终的静态资源文件。,它利用浏览器原生的ES模块机制,将每个模块作为一个独立的请求来加载,而不是像Webpack那样把所有模块打包成一个文件。,因为需要将所有的模块进行打包。Vite通过利用ES模块的特性,在开发过程中仅对需要的模块进行编译和构建,从而提升了开发服务器的启动速度。
2025-11-27 02:49:02
301
原创 Spring全家桶简介
它的目标是简化Spring应用和服务的创建、开发与部署,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用的微服务功能,可以和spring cloud联合部署。也就是我们经常说的spring框架,包括了ioc依赖注入,Context上下文、bean管理、springmvc等众多功能模块,其它spring项目比如spring boot也会依赖spring框架。是一个数据访问及操作的工具集,封装了多种数据源的操作能力,包括:jdbc、Redis、MongoDB等。
2025-11-27 01:48:42
391
原创 SpringBoot3整合FastJSON2如何配置configureMessageConverters
在 Spring Boot 3 中整合 FastJSON 2 主要涉及到以下几个步骤,包括添加依赖、配置 FastJSON 作为 JSON 处理器等。
2025-11-27 00:48:40
406
原创 【MySQL】复合查询
首先,要有一张每个部门的平均工资临时表,然后用临时表与员工表做连接查询,从连接查询的结果中筛选出来符合条件的即可。首先我们要始终明确一点:sql查询出来的结果一定是一张表,所以可以把一个子查询的结果当做一个临时表使用。在实际应用中,为了合并多个select的执行结果,可以使用集合操作符 union,union all。先查询10号部门的岗位,就当前表而言,其结果会有多行记录;然后再找出岗位相同的。首先要找出最高的工资,然后使用工资去比较,使用嵌套查询(子查询),也是在开发过程中使用的最多的连接查询。
2025-11-25 06:13:29
827
原创 SQL Server 2019安装详细教程(图文详解,非常靠谱)
Microsoft SQL Server 是一种关系数据库管理系统 (RDBMS)。应用程序和工具连接到 SQL Server_实例_或_数据库_,并使用(T-SQL) 进行通信。SQL Server Management Studio (SSMS) 是一种集成环境,用于管理任何 SQL 基础结构。使用 SSMS 访问、配置、管理和开发 SQL Server、和的所有组件。
2025-11-25 04:53:54
869
原创 SpringBoot + vue 管理系统
我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了后台。这是不安全的,所以要做登录认证。最终我们要实现的效果就是用户必须登录之后,才可以访问后台系统中的功能。(14,‘zhangsanfeng’,‘123456’,‘张三丰’,1,‘14.jpg’,2,‘2002-08-01’,2,now(),now()),(16,‘songyuanqiao’,‘123456’,‘宋远桥’,1,‘16.jpg’,2,‘2007-01-01’,2,now(),now()),
2025-11-25 03:33:03
373
原创 RabbitMQ之交换机
在讲交换机之前我们需要了解一些概念,在RabbitMQ工作流程有一项叫Exchange(交换机:消息的分发中心****),它的作用是将生产者发送的消息转发到具体的队列,队列再将消息以推送或者拉取方式给消费者进行消费。**原:**在RabbitMQ中生产者发送的信息不会直接投递到队列中,而是先将消息投递到交换机中,在由交换机路由到一个或多个队列中。流程:生产者 --(路由键)—> 交换机 --(绑定键)—> 队列 --(pull,push)—>消费者。
2025-11-25 02:13:30
632
原创 MySQL数据库的数据文件保存在哪?MySQL数据存在哪里
在安装好MySQL数据库使用一段时间后,会产生许多的数据库和数据。那这些数据库的数据文件存放在本地文件夹的什么位置呢一、默认位置MySQL创建的数据库实际上存储在文件系统的一个特定目录中,该目录通常为MySQL的数据目录。这个目录的默认位置依据操作系统和MySQL的安装方式不同而有所差异。、这个目录通常位于,它可能位于是个隐藏文件夹)**其中“X.X”是MySQL的版本号。目录(每个数据库都有一个与其同名的文件夹,而这个文件夹中包含了该数据库的所有表的文件,而其中的文件代表了数据库中的表。
2025-11-25 00:53:21
777
原创 对基因列表中批量的基因进行GO和KEGG注释
获得一个基因列表后,进行GO(Gene Ontology)和KEGG(Kyoto Encyclopedia of Genes and Genomes)注释是生物信息学中常见的分析步骤,可以帮助你理解这些基因的功能、生物学过程以及它们在代谢途径中的角色。确保你的基因列表是清洁的,并且格式正确(通常是基因ID或基因名称)。这些ID应该是标准化的,比如Ensembl基因ID、Entrez基因ID等。2.1使用在线工具。
2025-11-24 07:03:25
524
原创 【spring专题】编译spring5.3源码
spring的github地址:https://github.com/spring-projects/spring-framework。将下载后的文件放在目录,例如我的是 G:in_repogradlegradle-7.5.1-bin.zip。下载地址:https://www.eclipse.org/aspectj/downloads.php。在gradle的init.d目录下新建文件 init.gradle,填入下面的内容。异常信息,可以发现异常是由于spring-web模块使用了http引起的。
2025-11-24 05:38:19
930
原创 Tomcat的升级
拷贝原Tomcat内容到新Tomcat目录下,webapps下源码、conf下配置文件(比如server.xml文件[可以直接覆盖,但是备份一份再覆盖更佳])tar -zcvf oldTomcat.tar.gz 旧版本Tomcat目录。下载地址(官网):https://tomcat.apache.org/进入tomcat下bin目录,启动tomcat。老版本bin目录下,停止Tomcat服务。给新版本Tomcat目录添加执行权限。上传升级包至服务器对应目录。
2025-11-24 04:13:34
221
原创 SpringBoot接口防抖(防重复提交),接口幂等性,轻松搞定
接口幂等性是指在分布式系统中,对于相同的请求,无论请求多少次,都应该返回相同的结果。这意味着,如果请求已经处理完毕,那么重复请求应该返回相同的响应,而不应该产生额外的副作用。这种特性对于确保系统的稳定性和一致性非常重要,尤其是在处理并发请求和网络异常的情况下。在编程中,可以通过一些特定的设计来实现接口幂等性,例如使用全局唯一的ID来标记请求,或者使用乐观锁机制来防止重复处理等。
2025-11-24 02:48:21
1006
原创 SDN架构详解
SDN架构中OpenFlow交换机基于流表(Flow Table)转发报文。经典网络依靠网络设备通过查询路由表指导流量转发当前OpenFlow的主流应用是用于数据中心的软件交换机,例如OVS、CE1800V(华为)等,而不是实现硬件交换机的转控分离每个流表项由匹配字段、优先级、计数器、指令、超时、Cookie、Flags这七部分组成。其中关于转发的关键的两个内容是匹配字段和指令。匹配字段是匹配规则,支持自定义。指令是用来描述匹配后的处理方式。
2025-11-24 01:23:27
980
原创 如何给windows版本redis设置密码
4、本机reids客户端工具连接redis,当没有输入密码时,我们发现无法连接redis,说明redis密码设置成功。如下图所示,这是redis免安装版的目录。打开redis.windows.conf文件。1、找到配置文件redis.windows.conf。3、保存配置,通过命令启动redis服务。找到requirePass 设置密码。意思是没有使用默认的conf文件。解决办法:在命令行中执行。
2025-11-23 04:52:42
196
原创 【SpringBoot】讲清楚日志文件&&lombok
提示:以下是本篇文章正文内容,下面案例可供参考在程序中获取志对象需要使志 LoggerFactory,如下代码所示// 1.得到?志对象志需要将每个类的类型传递进去,这样我们才知道志的归属类,才能更便、更直观的定位到问题类今天的博客,希望大佬们能在评论指出错误!~~???
2025-11-23 03:44:26
609
原创 ThinkPHP和PHP的区别
PHP,即“超文本预处理器”,是一种在服务器端执行的脚本语言,它与C语言类似,是常用的网站编程语言。PHP的语法混合了C、Java、Perl以及PHP自创的语法,易于学习和使用。ThinkPHP是一个基于PHP的MVC(Model-View-Controller)框架,旨在简化企业级应用开发。它提供了一整套协作开发的规范,是一个提高开发效率、优化产品结构、促进团队协作的框架。PHP是一种编程语言,提供了基础的编程功能,适合从简单到复杂的所有类型的网络应用开发。
2025-11-23 02:36:12
633
原创 oracle 12c查看执行过的sql及当前正在执行的sql
2.PARSING_SCHEMA_NAME显示的是哪个用户执行的该sql,而不是这个sql操作的表属于哪个schema。当执行新的SQL语句时,如果这条SQL语句不在共享池中,数据库会进行硬解析,并将解析后的执行计划加载到共享池中。如果执行的是共享池内已经存在的SQL语句,则只会进行软解析,LAST_LOAD_TIME的值不会改变。假如同事让排查某个接口都有哪些慢sql,可以使用这个方法(先调用下这个慢接口,然后统计下这个时间段内的慢sql),只是会导出非这个接口的多余慢sql,再结合业务进行筛选吧。
2025-11-22 19:51:38
523
原创 MySQL中between and的基本用法、范围查询
是支持数值查询的,当字段类型是数值时 between A and B等同于>=A and <=B。not between and表示指定范围之外的值。not between A and B相当于 < A or >B。从上面示例可以看出,还有两条数据时间是在2024-10-30日范围内,但是并没有被查询出来。当between and用于数值查询时,常用于字段类型为int、decimal等。当查询时间范围时要注意可能会遇到时间精度问题,具体参考下面示例。示例:查询年龄不在24到25之间的用户。
2025-11-22 18:40:39
415
原创 java进阶--多线程学习
并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。所以无论从微观还是从宏观来看,二者都是一起执行的。来个比喻:并发是一个人同时吃三个馒头,而并行是三个人同时吃三个馒头。并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。并发是逻辑上的同时发生,而并行是物理上的同时发生。并发是指一个处理器同时处理多个任务。
2025-11-22 17:29:44
219
原创 如何查询SQL Server数据库服务器的IP地址
本文将介绍几种简单而有效的方法,帮助你轻松获取这一信息。无论你是新手还是经验丰富的专业人士,这些方法都能为你提供所需的信息。获取SQL Server的IP地址有多种方法,从简单的T-SQL查询到使用图形界面工具。无论你选择哪种方法,了解如何获取这一信息都将有助于更好地管理和配置你的SQL Server环境。T-SQL(Transact-SQL)是SQL Server的扩展版本,提供了强大的查询能力。虽然这种方法不是特定于SQL Server的,但它可以快速获取服务器的网络信息。打开命令提示符(CMD)
2025-11-22 15:34:32
320
原创 五大消息模型介绍(RabbitMQ 详细注释版)
1.simple消息模型一个生产者 一个队列 一个消费者在此种消费模型下,若消费者对消息的处理速度较慢。那么当生产者不断向队列发送消息时,便会造成堵塞。2.work消息模型一个生产者 一个队列 多个消费者由此模型衍生的 -> 能者多劳:消费者性能高的可以多消费消息3. fanout消息模型一个生产者 一个交换机 多个队列 多个消费者这种模型下,生产着会将消息发送至交换机。再由交换机以广播的形式发送给所有消费者,由消费者在自己相应的队列获取消息。这种模型存在一个缺点,就是无法对消息进行过滤。
2025-11-22 14:24:10
285
原创 【MySQL】表空间丢失处理(Tablespace is missing for table 错误处理)
通过上述方法,我成功恢复了三个表的数据。如果你在运行MySQL时遇到类似问题,可以尝试这套方法。记住,备份和预防比事后修复更重要!如果有任何问题或更好的方法,欢迎在评论区与我交流!希望这篇文章对你有所帮助!如果有任何问题,请留言探讨。
2025-11-20 18:20:48
383
原创 Tomcat下载,安装,配置终极版(2024)
那么本章内容就到此结束了,如果你不想去官网下载,那我这里也给你提供了Tomcat的安装包。里面是10.20的版本,供你下载。Thank you!链接:https://pan.baidu.com/s/1n8bjvHEFa0ZsX_04k3HX9Apwd=vryp提取码:vryp。
2025-11-20 17:27:08
520
原创 SpringGateway网关(Spring Gateway是Spring自己编写的,也是SpringCloud中的组件)
早期(2020年前)奈非提供的微服务组件和框架受到了很多开发者的欢迎这些框架和SpringCloud Alibaba的对应关系我们要了解现在还有很多旧项目维护是使用奈非框架完成的微服务架构Nacos对应Eureka都是注册中心Dubbo对应Ribbon+feign都是实现微服务远程RPC调用的组件Sentinel对应Hystrix都是做项目限流熔断降级的组件Gateway对应Zuul都是网关组件Gateway框架不是阿里写的,是Spring提供的"网"指网络,"关"指关口或关卡。
2025-11-20 16:33:49
558
原创 SpringBoot 与 SpringCloud的版本对应详细版
spring cloud各个版本之间是有所区别的,比如在SpringCloud中,1.X和2.X版本在pom.xml中引入的jar包名字都不一样,比如有的叫spirng-cloud-starter-hystrix 有的叫spring-cloud-netflix-hystrix,维护起来会比较困难。spring-cloud-starter-netflix-xx 替换了原有的 spring-cloud-starter-xx(此处如有不正确请指出)关于spring cloud1.x版本和2.x版本区别。
2025-11-20 15:41:24
387
原创 SDN架构详解
SDN架构中OpenFlow交换机基于流表(Flow Table)转发报文。经典网络依靠网络设备通过查询路由表指导流量转发当前OpenFlow的主流应用是用于数据中心的软件交换机,例如OVS、CE1800V(华为)等,而不是实现硬件交换机的转控分离每个流表项由匹配字段、优先级、计数器、指令、超时、Cookie、Flags这七部分组成。其中关于转发的关键的两个内容是匹配字段和指令。匹配字段是匹配规则,支持自定义。指令是用来描述匹配后的处理方式。
2025-11-20 14:48:29
1025
原创 SpringBoot读取properties中文乱码解决方案
在IDEA中将所有的编码设置为UTF-8,同时勾上Transparent native-to-ascii conversion的选项,然后重新创建application.properties的文件。由于业务需求需要在application.properties中配置一个带有中文字符串的参数,注入到业务类中,但是发现注入的中文是乱码的。就是将application.properties的文件修改为application.yml的结构,重启项目。
2025-11-19 06:14:19
368
原创 spring boot 项目打印sql日志和结果,使用logback或配置文件
在 Spring Boot 项目中使用 MyBatis 或 MyBatis-Plus 作为持久化框架时,你可以通过配置 Logback 来打印 SQL 日志及其结果。
2025-11-19 04:59:28
327
原创 Node.js 与 Docker 深度整合:轻松部署与管理 Node.js 应用
通过本文的学习,我们掌握了如何将 Node.js 应用与 Docker 深度整合,并成功部署到容器中。使用多阶段构建优化镜像大小,避免将不必要的文件和依赖打包进最终镜像。合理利用 Docker 缓存,将不常变化的操作(如安装依赖)放在 Dockerfile 的前面,以加速构建。保持容器的简洁性和高效性,只包含应用运行所需的文件,避免不必要的依赖。确保数据持久性,通过 Docker 卷来管理数据库或文件数据,避免容器删除时数据丢失。
2025-11-19 03:44:48
359
原创 MySQL——表的约束
真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束,更好的保证数据的合****法性。表的约束:表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束的本质是通过技术手段,倒逼程序员去插入正确的数据。约束的最终目的,就是保证数据的完整性和可预期性。非空约束有两个值:null(默认的)和not null(不为空)。数据库中默认创建的字段,如果不添加非空约束,基本都是可以为空,但是实际开发时,有些字段可能被要求必须添加数据,因此必须设置为非空。同时应该尽可能保证字段不
2025-11-19 02:30:39
415
原创 Spring Boot 排除自动配置
Spring Boot 自动配置非常强大,有时需要排除/禁用 Spring Boot 某些类的自动化配置。当自动配置类不在类路径下时,使用。
2025-11-18 11:33:36
351
原创 Plugin ‘mysql_native_password‘ is not loaded`
使用的是基于SHA-1的密码散列算法。SHA-1算法已被认为不再足够安全,存在一定的安全隐患,容易受到撞库攻击和其他形式的攻击。
2025-11-18 10:26:15
409
原创 mysql的分区表
---------------分割线-------------------------------下面以时间范围进行创建(每月一个分区,表中创建了四个月的分区)2、写存储过程,用于创建新的分区, 这里是按天创建新的分区。【针对mysql,使用mysql的定时事件】3、创建定时事件,调用存储过程。4、查看已经创建的定时事件。2、mapper文件。
2025-11-18 03:26:11
288
原创 MySQL 的 INSERT(插入数据)详解
如果你要插入的值涵盖了表中的所有列,可以省略列名部分。但请注意,值的顺序必须与表中列的顺序相同。无论是基础的单行插入,还是高级的插入否则更新和数据迁移。语句非常灵活,支持多种语法形式,可以根据具体需求选择合适的用法。如果你希望在插入数据时忽略已经存在的记录(即不抛出错误),可以使用。如果你希望在插入数据时遇到主键或唯一键冲突时更新现有记录,可以使用。语法来插入数据,这种方式更适用于需要明确指定列名和值的场景。语法,适用于插入单行数据。子句中指定多组值,从而一次性插入多行数据。语句的详细语法和使用示例。
2025-11-18 02:21:45
273
原创 Java进阶之路,Java程序员职业发展规划
今天不说行业发展以及Java在市场的占有率。仅仅聊聊身为Java程序员应该如何规划自己的职业发展路线。提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2025-11-18 01:17:06
347
原创 SpringCloud系列教程:微服务的未来 (五)枚举处理器、JSON处理器、分页插件实现
在现代 Java 开发中,我们常常需要处理各种通用的功能和需求,诸如枚举的处理、JSON 数据处理,以及分页查询等。这些功能虽然看似简单,但在实际开发中往往涉及到许多细节和优化。为了提高开发效率、减少重复代码的编写,我们通常会通过封装和抽象这些功能,形成易于复用和维护的工具类或组件。这篇博客中,我们详细介绍了如何实现并优化三个常见的功能处理器:枚举处理器、JSON 处理器和分页插件。这些技术的合理封装和应用,不仅能让我们的代码更加高效、简洁,还能有效地提升系统的可维护性。
2025-11-17 06:26:29
914
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅