- 博客(115)
- 收藏
- 关注
原创 【JAVA进阶篇教学】第十二篇:Java中ReentrantReadWriteLock锁讲解
读写锁是一种用于实现多线程环境下读写操作并发控制的锁机制。读写锁可以提高并发性能,特别是在多读少写的场景下。在使用读写锁时,需要注意读写锁的公平性、重入性、降级、升级和Condition等问题,以保证读写锁的安全性。
2025-03-22 11:32:59
524
原创 sql实战解析-sum()over(partition by xx order by xx)
3、sum( )over( partition by xx order by xx) 在 sum( )over( order by xx) 基础之上,增加一个分组动作,所有的计算都在分组内生效,即在每个分区内,进行sum( )over( order by xx) 的操作。sum( c )over( partition by a order by b) 按照一定规则汇总c的值,具体规则为以a分组,每组内按照b进行排序,汇总第一行至当前行的c的加和值。1、sum( )over( ) 对所有行进行求和。
2025-03-22 02:30:56
454
原创 SpringCloud基础 入门级 学习SpringCloud 超详细(简单通俗易懂)
小明是一家烧烤店的烧烤师傅,每天不仅要,准备食材,准备配料,烧烤(可以看作一个单体架构)。后来小明烤的太好吃了,客人也多了,又专门雇了两位师傅小红,李华,小红专门准备食材,李华专门准备配料,小明专门烧烤。小明,小红,李华这三者的关系就是分布式。小明不雇用小红和李华了,找到了自己的好朋友烧烤师傅 王刚来帮忙,王刚每天工作和小明一样要准备食材,准备配料,烧烤。注意这里的配置文件,端口号改变,并且没有配置数据源,无法对数据库直接操作。API服务网关(新一代API网关,提供路由,负载均衡,过滤等)
2025-03-22 00:54:14
1118
原创 Springboot3 Mybatis-plus 3.5.9
{"age": 20, "intro": "佛系青年", "gender": "male"}@Data。
2025-03-10 23:32:39
660
原创 Spring Boot实战:拦截器
什么是拦截器:概念 :拦截器是Spring框架提供的核功能之, 主要来拦截的请求, 在指定法前后, 根据业务需要执预先设定的代码。也就是说, 允许开发员提前预定义些逻辑, 在的请求响应前后执. 也可以在请求前阻其执.在拦截器当中,开发员可以在应程序中做些通性的操作, 如通过拦截器来拦截前端发来的请求, 判断Session中是否有登录的信息. 如果有就可以放, 如果没有就进拦截.拦截器在SpringBoot中主要有以下几个作用:1.2拦截器的基本使用拦截器的使步骤分为两步:1.定义拦截器:实现HandlerI
2025-03-10 17:33:33
658
原创 Redis主从配置
#修改redis-slave1.conf redis-slave2.conf 设置“跟从”----127.0.0.1 6381(可以理解为从库指定主库)#分别打开对应文件添加主库的ip地址和端口 如果有密码则设置密码(需要注意我这里密码是123456和直接6380里面不一样)在启动从库时候可以看到控制台打印的信息已经连接了对应端口的主库。主从配置:在多个redis实例建立起主从关系,当。通过主从配置可以实现redis数据的备份(通过主从配置还可以实现redis的读写分离。的备份),保证数据的安全性;
2025-03-10 12:47:19
509
原创 Node.js的解释
Node.js 是一个基于 JavaScript 的开源服务器端运行时环境,允许开发者用 JavaScript 编写服务器端代码。与传统的前端 JavaScript 主要运行在浏览器端不同,Node.js 通过提供一个非阻塞的异步模型,允许开发者在服务器端创建高性能的网络应用程序。想象你把 JavaScript 看作是一个厨师,传统的 JavaScript 是只在“厨房”(浏览器)里工作的,而 Node.js 则是让这个厨师可以走出厨房,在餐馆的大厅、后台和仓库(服务器)中工作,从而大大提高工作效率。
2025-03-07 22:57:57
724
原创 MySQL查看日志
二进制日志( BINLOG )记录了所有的 DDL (数据定义语言)语句和 DML (数据操纵语言)语句,但不包括数据查询( SELECT 、 SHOW )语句。作用:① . 灾难时的数据恢复;② . MySQL 的主从复制。在 MySQL8 版本中,默认二进制日志是开启着。
2025-03-05 19:13:17
929
原创 MYSQL 创建索引
第一次使用删除语句报错的原因是:由于自增列的错误,所以下面是先删除了自增属性,然后重新删除主键。创建唯一索引的方式有三种,和上面添加主键索引大致上是相同的,故只给出对应的代码部分。创建符合索引与创建普通索引语法相同,只不过是指定多个列,列与列之间用逗号隔开。其中:主键索引用PRI表示,唯一索引用UMI表示,普通索引用MUL表示。普通索引的三种创建方式和上面两种差不多,不过还是有一些不同的。查看索引的三种方式,在上面都有提到,现在可以进行一下总结。index 是创建索引的关键字,括号里是索引列。
2025-03-05 17:50:59
344
原创 Java面试汇总>>>初级工程师—面试1000题
线程池:其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。补充:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。优点:1)降低资源消耗。减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。2)提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。3)提高线程的可管理性。
2025-03-05 16:25:51
577
原创 java与mysql连接 使用mysql-connector-java连接msql
本文章讲解使用mysql-connector-java-8.0.30建立java程序和mysql本地数据库的连接。自用文章,仅作参考。本文章简单讲解了如何在java中直接使用mysql的语法筛选数据库信息。
2025-03-05 01:18:57
504
原创 重学SpringBoot3-Spring Retry实践
Spring Retry是Spring生态系统中的一个重要组件,它提供了自动重试失败操作的能力。在分布式系统中,由于网络抖动、服务暂时不可用等临时性故障,重试机制显得尤为重要。本文将详细介绍如何在 SpringBoot 3 应用中集成和使用 Spring Retry。@Service@Slf4j@Resource/*** 发送简单文本邮件*/@Overridetry {
2025-03-03 11:54:52
570
原创 每天一道Java面试题,SpringBoot的自动装配原理
小白的背题记录,大神轻喷,有错麻烦指出和补充Thanks(?ω?)?SpringBoot的自动装配原理:在SpringBoot项目中都会有一起启动类上贴有一个注解叫@SpringBootApplication,这个注解是一个复合注解,里面有几个注解,其中来实现自动装配的有三个是@ComponentScan,@SpringBootConfiguration和@EnableAutoConfiguration。其中@ComponentScan 主要让启动类赋予扫描功能,做到扫描包路径@SpringBootConf
2025-03-02 22:12:35
126
原创 如何在 Windows 上安装 MySQL(保姆级教程2024版)
我们快完成了!下一步是连接到服务器。输入 root 帐户的密码,然后单击**“检查”**。您将看到_连接成功_状态:此屏幕后面是另一个要求应用配置的屏幕。只需执行它并单击即可**Finish**。我们终于到达了最后一个屏幕。在这里您可以选择是否启动Workbench和Shell,以及检查文档或其他示例。
2025-03-02 20:53:30
733
原创 一个基于Spring Boot的简单网吧管理系统
一个基于Spring Boot的简单网吧管理系统的案例代码。这个系统包括用户管理、电脑管理、上机记录管理等功能。代码结构清晰,适合初学者学习和参考。
2025-03-01 15:24:53
310
原创 【Oracle11g SQL详解】INSERT INTO 的用法及插入数据注意事项
是向表插入数据的核心 SQL 语句,适用于单行插入、批量插入以及基于查询的插入。语句用于向表中插入数据,是数据写入操作中最常用的 SQL 语句之一。块或外部数据工具(如 SQL*Loader)实现批量插入。列的顺序必须与提供的值一一对应,否则可能出现错误。实现批量插入,但不支持单条语句直接插入多行。当需要插入某些列的默认值时,可以使用子查询。插入的值类型与列定义类型不匹配。在 Oracle 11g 中,的方式将查询结果插入目标表。确认新插入的数据主键是否唯一。检查并转换插入数据的类型。插入了重复的主键值。
2025-02-28 23:22:30
964
原创 【AI系统】昇腾 AI 架构介绍
昇腾计算的基础软硬件是产业的核,也是 AI 计算能的来源。华为,作为昇腾计算产业态的员,是基础软硬件系统的核贡献者。昇腾计算软硬件包括硬件系统、基础软件和应使能等。而本书介绍的 AI 系统整体架构(如图所示),则是对应与昇腾 AI 产业的全栈架构较为相似。因此这里以昇腾计算产业作为例子,来以实际工业界计算产业中的昇腾作为例子进行阐述。其他计算产业如英伟达、寒武纪、摩尔线程等全栈架构基本与 AI 系统也较为相似。
2025-02-28 14:22:22
996
原创 sql 优化,提高查询速度
在系统开发中,SQL查询的优化是提高应用性能和响应速度的关键。SQL查询的优化都是相对的,要根据具体业务和库表数据量的大小选择合适的优化方案。
2025-02-28 12:42:24
908
原创 Springboot项目中线程池使用整理
Spring环境:优先使用@Bean配置ThreadPoolTaskExecutor全局异步配置:实现AsyncConfigurer接口特殊性能要求:使用private static final方式。
2025-02-28 10:59:19
664
原创 SpringBoot 3.x 整合swagger
对于SpringBoot而言,Swagger的作用是通过后端SpringBoot代码快速生成接口文档,方便测试接口以及前端使用。
2025-02-27 14:06:37
942
原创 Spring Boot 整合 Redis 步骤详解
通过上述步骤,我们成功地在 Spring Boot 应用中集成了 Redis,并实现了基本的数据缓存功能。这不仅提高了应用的性能,还为开发者提供了更多灵活的数据管理手段。
2025-02-27 12:43:35
597
原创 QoS质量配置
当自定义排队在某个接口上生效的时候,系统将会为这个接口维护17个输出队列。你可 以指定队列1到16。与每一个输出队列相关的是可配置字节总数以及数据包的类型。可 配置字节总数指定在系统移动到下一个队列以前,系统应当从当前的队列中发送多少字 节的数据。编号为0的队列是一个系统队列;在任何编号为1到16之间的队列得到处理以前,编号 为0的队列将先被清空。系统把优先权级别高的数据包,例如保持活动数据包以及信令 数据包,安排到这个队列。其他的通信不能够使用这个队列。
2025-02-27 11:21:11
1156
原创 MySQL系列之数据类型(Date&Time)
在上期文章中,博主介绍了MySQL的数据类型Numeric,今天我们继续探索第二种数据类型: 日期或时间。MySQL支持对Timestamp和Datetime类型的字段进行自动填充(默认为当前数据库服务器时间那么该如何实现呢?且看下文。对于表中的任何Timestamp或Datetime列,你可以将“当前时间(戳)”指定为默认值或者自动更新,对于未指定列值的行,将自动初始化为当前时间(戳)。当行中任何其他列的值发生变化时,自动更新的(时间(戳))列会更新为当前时间(戳),否则自动更新的列将保持不变。
2025-02-26 02:28:03
1016
原创 MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
通过本文的介绍,你已经学会了如何在 Java 中连接 MySQL 数据库并实现数据交互。数据库连接:使用 JDBC 连接 MySQL 数据库。数据操作:实现插入、查询、更新和删除(CRUD)操作。最佳实践:使用避免 SQL 注入。在实际应用中,建议使用连接池(如 HikariCP 或 DBCP)来提高性能和资源利用率。同时,可以考虑使用 ORM 框架(如 Hibernate 或 MyBatis)来简化数据库操作,提高开发效率。希望本文能帮助你快速上手 Java 与 MySQL 的数据交互!
2025-02-26 01:08:16
461
原创 java面试100题(应届生必备)
== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用;而 equals 默认情况下是引用比较,只是很多类重新了 equals 方法,比如 String、Integer 等把它变成了值比较,所以一般情况下 equals 比较的是值是否相等。
2025-02-25 21:46:50
766
原创 java中多线程常见面试题
线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存储了该线程以读/写共享变量的副本。2. 将 Runnable 对象作为一个类的内部类,共享数据作为这个类的成员变量,每个线程对共享数据的操作方法也封装在外部类,以便实现对数据的各个操作的同步和互斥,作为内部类的各个 Runnable 对象调用外部类的这些方法。数据的分析,数据迁移的时候,可以用多线程,比如hadoop中mapreduce计算时候,可以增加分区。
2025-02-24 22:52:42
863
原创 Java IO 相关面试题
架,对应 java.nio 包,提供了 Channel , Selector,Buffer 等抽象。Java 中传统的 IO 都是阻塞 IO,比如通过 socket 来读数据,调用 read()方法之后,如果。Asynchronous IO(异步 IO):Java NIO 可以让你异步的使用 IO,例如:当线程从通。Java IO 和 NIO 之间第一个最大的区别是,IO 是面向流的,NIO 是面向缓冲区的。Java IO 的各种流是阻塞的。它支持面向缓冲的,基于通道的 I/O 操作方法。
2025-02-24 19:10:34
273
原创 @EnableAspectJAutoProxy 注解如何开启 spring aop
通过 @EnableAspectJAutoProxy 注解引入类型为 AnnotationAwareAspectJAutoProxyCreator 的 bean,这个 bean 会根据 AspectJ 的注解收集 Advisor ,通过收集的 Advisor 创建代理,底层又会把 Advisor 中的 Advice 转换为 MethodInvocation 拦截目标方法的执行注册该对象之后就是开启 自动代理对象创建,spring aop 就是通过动态代理的方式实现,所以可以说是开启代理的功能。
2025-02-24 16:20:17
937
原创 第九篇:NoSQL 数据库与大数据
本文将介绍 NoSQL 数据库的种类与特性,分析其与关系型数据库的主要区别及应用场景。我们还将探讨几种常见的 NoSQL 数据库,如 MongoDB、Redis、Cassandra 和 HBase,最后我们会深入探讨大数据技术的核心工具(如 Hadoop、Spark)及其与数据库技术的整合。一、什么是 NoSQL 数据库?NoSQL(Not Only SQL)是一类不同于传统关系型数据库(RDBMS)的数据库,它旨在解决传统数据库在扩展性、灵活性等方面的不足。
2025-02-23 06:19:41
1000
原创 开源的Text-to-SQL工具WrenAI
WrenAI是一个开源的Text-to-SQL工具,旨在通过自然语言交互界面,帮助用户更便捷地查询数据库。
2025-02-23 04:32:22
449
原创 SQL Server的安装和简单使用
SQL Server数据库是Microsoft开发设计的一个关系数据库智能管理系统(RDBMS),现在是全世界主流数据库之一;SQL Server数据库具备方便使用、可伸缩性好、相关软件集成程度高等优势,能够从单一的笔记本上运行或以高倍云服务器集群为基础,或在这两者之间任何东西上运行。尽管说成“任何东西”,可是依然要考虑有关的软件和硬件配置;
2025-02-21 22:17:45
993
原创 springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
发现这点后,我感觉这也太low了,毕竟之前jar包也就将近200m,而且使用的是阿里的云效流水线构建工具,这样构建一次得花多久?最最让我恶心的是,我上周快下班时候使用这种方式成功转换了一次,这就给我一种错觉,可能是我启动命令的问题,于是就疯狂尝试修改启动命令,找对应的参数。那我就意识到了,都是docker容器,不一样的只能是挂载文件,那问题就只能出在字体上了,因为用服务器试过word转pdf没有中文乱码问题(之前有人上传了一些字体),所以服务器上我就没有上传字体,于是就出现了该问题,字体还是要上传全的。
2025-02-21 17:19:16
660
原创 spring session、spring security和redis整合的简单使用
通过user进行登录,再次查看redis,我们可以发现先前的sessionId改变了,同时还多出了一条数据"spring:session:index:org.springframework.session.FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME:user",这条数据就是我们刚登陆的user。点击Log Out退出登录,然后再出查看redis,我们会发现之间的增加的那条用户数据不见了。访问SessionController中的。
2025-02-21 15:25:29
390
原创 Redis重大版本整理(Redis2.6-Redis7.0)
Redis借鉴了Linux操做系统对于版本号的命名规则:node 版本号第二位若是是奇数,则为非稳定版本(例如2.7、2.9、3.1),若是是偶数,则为稳定版本(例如2.6、2.8、3.0、3.2)。当前奇数版本就是下一个稳定版本的开发版本,例如2.9版本是3.0版本的开发版本,因此咱们在生产环境一般选取偶数版本的Redis。
2025-02-21 02:19:34
989
原创 PCIe学习笔记1:PCIe体系架构——PCIe简介
PCIe是一种串行总线,采用双向连接的方式,可同时收发,是一种双单工连接。PCIe设备之间的信号传输路径称作链路(Links),一个link由一个或多个收发通道(Lanes)组成。协议规范中的x1、x2、x4、x8、x16和x32分别表示一个link中包含1、2、4、8、16或32个lane。PCIe 允许多种链路宽度,系统设计时可以在成本和性能之间做出适当的权衡——采用更多的lane可以提供更高的通信带宽,但成本、空间和功耗相应增加。
2025-02-20 23:58:13
821
原创 MySQL系列之数据类型(String)
MySQL数据类型第三弹闪亮登场,欢迎关注O。本篇博主开始谈谈MySQL是如何存储字符串的,以及它有哪些规则或要求,如何正确的选择字符串类型等等话题。马不停蹄,话不宜迟,咱们边聊边谈~提示:本系列均以MySQL5.7版本为例,举例说明。本期博主介绍了MySQL中的字符串类型相关知识点,有些很重要,有些只需了解它,欢迎关注哦。
2025-02-20 22:36:12
785
原创 位运算在数据库中的运用实践-以MySQL和PG为例
最近在解决某用户的一个业务需求时,遇到一个很有意思的场景。首先先跟大家分享一下需求背景。用户主要是面向一线的企业工厂,在他们实际生产过程中,为了保障安全生产。由于在车间中,所有的设备和机器都是全天运行,因此特别容易出现运行故障。因此,安全管理部门呢就结合生产时间,将组织专门的人员在上班时间内实现对运行设备的一个巡视,每个班组上班时间为8小时,同时要求每4个小时就要对设备进行一次巡查。根据上班时间分为早班、中班、晚班,每个班由1到多个人员组成。
2025-02-16 10:01:25
227
原创 【书籍学习】史上最全的Java进阶书籍推荐
学习Java,书籍是必不可少的学习工具之一,尤其是对于自学者而言。废话不多说,下边就给大家推荐一些Java进阶的好书。第一部分:Java语言篇1.《Java编程规范》 适合对象:初级、中级介绍:这本书的作者是被誉为Java之父的James Gosling,入门者推荐阅读,对基础的讲解很不错。2.《Java编程思想》 适合对象:初级、中级介绍:豆瓣给出了9.1的评分,全球程序员广泛赞誉。
2025-02-16 01:05:00
706
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人