自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合

Spring Cloud Stream是一个用于构建基于事件驱动的微服务应用程序的框架,其核心目标是简化开发过程,降低消息通信的复杂性,从而使开发人员能够专注于编写业务逻辑。Spring Cloud Stream通过提供Binder抽象,将应用程序与消息中间件解耦,让开发人员无需关心底层通信细节。同时,它还提供了一套丰富的API和特性,如消息分组、分区和错误处理,使得构建强大、可扩展的事件驱动应用程序变得更加简单。

2024-03-07 22:20:28 7623 97

原创 【408计算机组成原理】溢出判断

溢出的本质就是补码无法表示这个数的真实的值了 一种情况是他太大 一种情况是他太小太大的叫上溢 太小的叫下溢溢出 说明是不正常的 不正常的也就是违反常理的什么叫违反常理?正+正=负 负+负=正 这就叫违反常理 没毛病吧?这一大段话咋一听好像是废话 但后面会用到这个基本的思想

2024-04-24 16:38:19 980 6

原创 使用PlantUML绘制活动图、泳道图

最近在学PlantUML 太漂亮了。给大家欣赏一下 我也记录一下。

2024-04-22 23:08:01 607 5

原创 【计算机组成原理】加法器原理及其优化

那么我们来看这个类他的实例是怎么样的这个图咋一看很复杂 其实就是一个类 它里面有非常多的。

2024-04-18 19:34:44 1434 14

原创 【算法统治世界】动态规划 个人笔记总结

动态规划可以被视为一种有限状态自动机,其中每个状态代表了问题的一个子集,状态之间的转移代表了子问题之间的关联。在有向无环图(Directed Acyclic Graph,简称DAG)中,每个节点代表一个状态,而边则代表了状态之间的转移关系。通过这种方式,动态规划将问题转化为在一个DAG上寻找最优路径的问题。

2024-04-09 12:19:15 17625 62

原创 【Spring实战项目】SpringBoot3整合WebSocket+拦截器实现登录验证!从原理到实战

WebSocket是基于TCP协议的一种网络协议,它实现了浏览器与服务器全双工通信,支持客户端和服务端之间相互发送信息。在有WebSocket之前,如果服务端数据发生了改变,客户端想知道的话,只能采用定时轮询的方式去服务端获取,这种方式很大程度上增大了服务器端的压力,有了WebSocket之后,如果服务端数据发生改变,可以立即通知客户端,客户端就不用轮询去换取,降低了服务器的压力。目前主流的浏览器都已经支持WebSocket协议了。

2024-04-03 09:29:27 1751 34

原创 SpringBoot微服务实现深度学习:构建AGI道路的基石+实战案例演示

SpringBoot是一种用于构建微服务架构的开源框架,它提供了简化的配置和快速开发的特性。微服务架构是一种将应用程序拆分为一组小型、独立部署的服务的方法,每个服务都有自己的业务功能,并通过轻量级的通信机制进行交互。SpringBoot提供了丰富的功能和工具,使得开发人员可以更轻松地构建、部署和管理微服务应用。SpringBoot的特点和优势:简化的配置:SpringBoot通过自动配置和约定优于配置的原则,大大简化了应用程序的配置工作,开发者只需关注业务逻辑的实现,而无需繁琐的配置。

2024-04-01 19:00:52 26924 93

原创 已解决:java.sql.SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES)

今天在搞软测一个作业 要用Tomcat整个古董项目因为用到的东西都很老大概就是因为旧版本的MySQL服务器使用mysql_native_password 但是。

2024-03-29 11:50:38 25654 53

原创 Bug日记:class path resource [application.yml] cannot be opened because it does not exist已修复!!!

本来一个好端端的项目 一直在跑了 也上线了 经过了多轮测试也没问题有一天 他突然要加某个功能对着api文档和demo 一顿CV猛如虎预编译也没有问题。

2024-03-28 13:56:37 28735 22

原创 Bug日记:class path resource [mybatis-config.xml] cannot be opened because it does not exist 已修复!!!

在Maven项目中,默认情况下,src/main/resources目录下的所有资源文件都会被自动包含到编译后的类路径(classpath)中。然而,在某些情况下,如果不明确指定资源文件的处理规则,可能会出现资源未按照预期方式加载的情况。尤其是在进行定制构建过程或有特殊资源处理需求时,Maven可能需要额外的指导来确保特定资源文件

2024-03-28 13:47:47 28591 2

原创 SpringBoot整合Redis:面试必考题-缓存击穿--逻辑过期解决

确定数据的更新逻辑:首先,需要明确数据的更新逻辑。了解数据是如何被修改、更新或者删除的,以及这些操作是由哪些业务逻辑触发的。这可以包括数据库更新、后端服务的数据变更通知等。监听数据的更新事件:在数据被修改、更新或者删除时,需要能够捕捉到这些事件。这可以通过数据库的触发器(Trigger)机制、消息队列、发布-订阅模式等方式来实现。目的是在数据更新时能够及时感知到。更新缓存和设置逻辑过期时间:当接收到数据更新事件时,需要更新相应的缓存,并重新设置逻辑过期时间。这意味着需要将最新的数据加载到缓存中,并根

2024-03-27 22:24:44 29667 115

原创 SpringBoot整合Redis:缓存击穿--互斥锁解决

Redis缓存击穿是指在高并发的情况下,当某个热点数据的缓存过期或不存在时,大量的请求同时涌入数据库或后端服务,导致数据库或后端服务负载过高,甚至崩溃的情况。

2024-03-27 21:43:18 29419 77

原创 Redis实战:缓存穿透及其解决思路 实战演示

缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,导致每次请求都要访问数据库,增加数据库的负载。为了解决缓存穿透问题

2024-03-21 21:57:15 30988 113

原创 SpringBoot整合Redis:Redis优化解决数据一致性问题

​本期我们重点讲一个后端的必考面试题 也是开发中常遇到的问题--数据一致性问题上一期我们讲到了 SpringBoot如何结合Redis做一个缓存 实现我们减少对数据库压力的一个目的。还不知道怎么做的小伙伴可以先回顾一下前文http://t.csdnimg.cn/tshRD​

2024-03-21 21:47:32 30785 86

原创 Springboot+Redis:实现缓存 减少对数据库的压力

关于 Redis 缓存的解释如下:Redis 如何实现缓存?在后端接收到请求后,对于需要进行缓存的接口,首先会在 Redis 中查找是否有对应的数据。如果缓存中不存在数据,系统会继续按照正常的业务流程处理请求,并将查询到的结果返回给客户端的同时也存储在 Redis 中。下次相同的请求到达时,系统可以直接从 Redis 中获取数据,而无需访问数据库。在启用缓存后,相同的请求在缓存有效期内不会再去读取数据库。但是,如果在此期间修改了数据库中的数据,接口返回的数据就无法保证与数据库一致。因此,在进行增、删、

2024-03-18 18:26:40 35381 68

原创 SpringMVC结合设计模式:解决MyBatisPlus传递嵌套JSON数据的难题

欢迎光临,终于引出我们经常会遇到需要传递对象的场景。有时候,我们需要将一个对象的数据传递给另一个对象进行处理,但是又不希望直接暴露对象的内部结构和实现细节。这时,我们可以使用模板模式来实现优雅的对象传递。为了实现这个场景,我们可以使用模板模式。模板模式是一种行为设计模式,它定义了一个抽象类或接口作为模板,其中包含了一个或多个抽象方法,用于定义算法的骨架。具体的子类可以根据需要实现这些抽象方法,从而完成算法的定制化。说说我这边的起因大概是这样的 要做一个问卷系统 这个等到你啦苏泽努力的苏泽。

2024-03-18 13:18:12 35392 155

原创 设计模式:智能合约的经典设计模式及解析

智能合约实现上要达到的目标是:完备的业务功能、精悍的代码逻辑、良好的模块抽象、清晰的合约结构、合理的安全检查、完备的升级方案。

2024-03-17 23:55:38 25582 68

原创 智能合约设计模式:讲解代理模式及其安全漏洞(已删除侵权内容版本)

智能合约设计模式是一种在区块链领域中用于编写智能合约的经验总结和最佳实践。类似于软件工程中的设计模式,智能合约设计模式提供了一套可重用的解决方案,用于解决智能合约开发中常见的问题和挑战。这些设计模式可以帮助开发者提高合约的安全性、可维护性和可扩展性。相同点:智能合约设计模式和软件工程中的设计模式都是为了解决特定问题而提供的经验总结和最佳实践。它们都旨在提高代码的可读性、可维护性和可重用性。不同点:智能合约设计模式更加关注区块链特有的问题和挑战,例如安全性、可信任性和去中心化。

2024-03-17 23:52:47 21025 19

原创 拆解Spring boot:Springboot为什么如此丝滑而简单?源码剖析解读自动装配

springboot帮我们做了什么一个字--自动!通常搭建一个基于spring的web应用,我们需要做以下工作:1、pom文件中引入相关jar包,包括spring、springmvc、redis、mybaits、log4j、mysql-connector-java 等等相关jar ...2、配置web.xml,Listener配置、Filter配置、Servlet配置、log4j配置、error配置 ...3、配置数据库连接、配置spring事务4、配置视图解析器5、开启注解、自动扫

2024-03-15 15:45:13 25949 100

原创 深入了解 Spring boot的事务管理机制:掌握 Spring 事务的几种传播行为、隔离级别和回滚机制,理解 AOP 在事务管理中的应用

在应用程序中,事务管理是确保数据的一致性和完整性的重要组成部分。Spring 事务管理提供了一种可靠且灵活的方式来管理事务,确保在数据库操作过程中的原子性、一致性、隔离性和持久性。数据库一致性:通过事务管理,可以确保数据库操作的原子性,即要么所有操作都成功提交,要么全部回滚,从而保持数据的一致性。错误处理和回滚:事务管理使得在发生错误时能够回滚事务,确保数据的完整性,以及在异常情况下进行适当的错误处理。并发控制:通过定义适当的隔离级别,事务管理可以处理并发访问数据库的问题,避免数据冲突和不一致性。

2024-03-15 14:21:21 21775 28

原创 Solidity 智能合约开发 - 基础:基础语法 基础数据类型、以及用法和示例

定义函数并在需要时进行调用。Copy Codefunction sayHello(string memory name) public {// 函数逻辑// ...定义数组并指定元素个数或直接初始化数组。// 空数组uint256[] myArray2 = new uint256[](3);// 长度为3的动态数组uint256[] myArray3 = [1, 2, 3];// 直接初始化数组定义结构体类型并初始化结构体变量。uint age;定义映射类型,并通过键值对存储和访问数据。

2024-03-14 21:29:23 21018 29

原创 官方统计2023年收入最高的编程语言:Solidity学习入门指南:看这一篇就够了 前置工作的方法全部在这里

Solidity:Solidity是一种面向合约的高级编程语言,主要用于编写区块链网络上的智能合约。在2023年的薪资排行榜中,Solidity以平均年薪18.8万美元(约合137万元人民币)的高薪位列第一测试币领取这里是常见水龙头的整理打开网站 翻译一下 然后输入对应的账户 直接就能领取

2024-03-14 08:00:00 21134 48

原创 Spring Schedule:Spring boot整合Spring Schedule实战讲解定时发送邮件的功能

Spring Sched本篇详细讲解定时任务如何构建 文末有详细的实战案例 定时发送邮件介绍定时任务调度技术是一种用于在预定时间或间隔时间执行任务的技术。它允许开发人员根据特定的时间表安排任务的执行,可以是一次性任务或周期性任务。定时任务调度技术通常用于需要定期执行的任务,例如数据备份、定时报告生成、定时数据同步等。Spring中的定时任务调度模块简介定时任务调度技术提供了一种方便和可靠的方式来执行重复性或定期性的任务。它可以帮助开发人员自动化一些常规的任务,减少人工干预和减轻人力负担。

2024-03-13 09:45:28 26971 166

原创 FISCO BCOS:深入浅出FISCO BCOS区块链底层平台

FISCO BCOS是什么?FISCO BCOS是一个金融级、国产安全可控的区块链底层平台,由深圳市金融区块链发展促进会(金链盟)开源工作组牵头研发。作为最早开源的国产联盟链底层平台之一,FISCO BCOS于2017年面向全球开源架构与设计

2024-03-13 00:02:48 6243 14

原创 Chainlink(预言机)讲解:基础知识总结 到底什么是预言机本篇带你解析

计算机领域内的预言机一词,最早是图灵提出的。(没错 正是在下的博客名“图灵重生我名苏泽”的那个图灵,计算机之父)图灵在图灵机(Turing Machine)的基础上,加入了一个称为预言者(oracle)的黑盒,组成了预言机(Oracle Machine)。所谓预言者,是一个可以回答特定问题集合的实体。即它可以向图灵机系统内部输入信息,帮助图灵机完成运算。以太坊的智能合约是“图灵完备(Turing Complete)”的,某种意义上可以看做一个图灵机,所以以太坊的设计者借鉴这个概念,把向“图灵完备的智

2024-03-12 15:12:20 5809 38

原创 智能合约开发基础知识:最小信任机制、智能合约、EVM

智能合约智能合约(Smart Contract)是一种基于区块链技术的自动化合约。它是一段程序代码,可以在区块链上执行、验证和执行合约的条款和条件。智能合约的执行过程:创建合约:首先,有一个人(创建者)使用一笔特殊的交易(称为合约创建交易)来部署合约。这笔交易包含了合约的字节码(即合约的编译后代码)和其他必要参数。在这笔交易中,创建者向合约地址发送以太币(ETH),作为合约的初始资金。合约创建交易:合约创建交易被广播到整个以太坊网络,并被矿工包含在一个区块中。区块链确认:矿工通过执

2024-03-11 21:30:51 5361 28

原创 区块链基础知识(下):共识机制 附带图解、超详细教学 看不懂你打死我

共识机制共识算法是用于保证分布式系统一致性的机制。这里的一致性可以是交易顺序的一致性、账本一致性、节点状态的一致性等。一般地,我们根据容错类型将共识算法分为两类。拜占庭容错: 拜占庭容错强调的是能够容忍部分区块链节点由于硬件错误、网络拥塞或断开以及遭到恶意攻击等情况出现的不可预料的行为。BFT系列算法是典型的拜占庭容错算法,比如PBFT、HotStuff等。非拜占庭容错: 非拜占庭容错通常指能够容忍部分区块链节点出现宕机错误,但不容忍出现不可预料的恶意行为导致的系统故障。常见的CFT共识算法有P

2024-03-11 17:56:25 5718 17

原创 区块链基础知识(上):区块链基本原理、加密哈希、公钥加密

这样做可以确保交易的完整性,因为即使交易的内容发生微小的更改,哈希值也会发生变化。公钥是可以被分享给其他人的密钥,而私钥是保密的,只有密钥的所有者知道。哈希函数的设计使得即使输入数据发生微小的变化,其生成的哈希值也会有很大的差异。交易哈希链是一种用于转让数字资产所有权的机制,它使用数字签名来验证交易的有效性,同时通过保留对上一个交易的加密反向链接来确保交易记录的完整性。现在,每个人都有了相同的账本副本,每个区块都记录了之前的区块的信息。现在,即使消息被加密,只有你拥有与公钥配对的私钥,才能解密消息。

2024-03-11 15:25:15 5928 18

原创 【解读】区块链和分布式记账技术标准体系建设指南

​《区块链和分布式记账技术标准体系建设指南》是由中国工业和信息化部、中央网络安全和信息化委员会办公室、国家标准化管理委员会联合印发的一份指南[1]。该指南旨在统筹考虑区块链和分布式记账技术产业发展和标准化工作情况,明确了区块链和分布式记账技术标准体系建设的总体要求,并提出了具体的建设内容和组织实施路径。​

2024-03-11 14:24:16 5166

原创 【算法沉淀】最长回文子串

提示给你一个字符串s,找到s中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2:输入:s = "cbbd"输出:"bb"提示:1

2024-03-09 16:29:27 5059 38

原创 【Spring云原生系列】Spring RabbitMQ:异步处理机制的基础--消息队列 原理讲解+使用教程

今天是女神节 现在我们的坤坤 很希望约他的女神出来。异步通讯异步同学 顾名思义 “异”就是不同 不同的步骤去执行 就不是一个线上的 他不必等待上一位女神给他回复 或者他不必完成上一次的任务(可以理解为群发) 就能够直接执行下一步 这 就是异步处理(异步通讯)但是 要怎么样实现这个模型? 就引入到了这里的主题 消息队列消息队列 --RabbitMQRabbitMQ是一个消息队列中间件,用于实现应用程序的异步和解耦,同时也能起到消息缓冲和消息分发的作用。它是基于AMQP(高级消息队列协议)

2024-03-08 16:38:22 6315 28

原创 Linux环境下安装nmp(Centos环境)保姆级教学 一步到位

为了加快下载速度和避免一些网络问题,您可以设置npm的镜像源为国内的镜像。在CentOS上安装npm,您需要先安装Node.js,因为npm是Node.js的包管理器。:为了使用yum安装Node.js,您需要先添加NodeSource的Yum存储库。:在安装Node.js之前,建议先更新系统软件包,以确保安装的是最新版本的软件包。来验证镜像是否设置成功。

2024-03-08 14:29:37 6179 14

原创 【Spring底层原理高级进阶】Spring Batch清洗和转换数据,一键处理繁杂数据!Spring Batch是如何实现IO流优化的?本文详解!

批处理是企业级业务系统不可或缺的一部分,spring batch是一个轻量级的综合性批处理框架,可用于开发企业信息系统中那些至关重要的数据批量处理业务.SpringBatch基于POJO和Spring框架,相当容易上手使用,让开发者很容易地访问和利用企业级服务.spring batch具有高可扩展性的框架,简单的批处理,复杂的大数据批处理作业都可以通过SpringBatch框架来实现。

2024-03-07 21:16:09 5881 10

原创 全方位碾压chatGPT4的全球最强模型Claude 3发布!速通指南在此!保姆级教学拿脚都能学会!

认识Claude 3 究竟是何方神圣被称为“OpenAI最强竞对”的大模型公司 Anthropic 重磅发布了其第三代人工智能(AI)模型 ——Claude 3 系列模型,包括 Claude 3 Opus、Claude 3 Sonnet 和 Claude 3 Haiku。其中,Claude 3 Opu 为 Claude 3 系列模型的最强版本,具有接近人类的理解能力,可以灵巧地处理开放式提示和复杂的任务,根据官方给到的资料,其性能全面超过了 GPT-4。值得一提的是,Claude 3 系列模型具

2024-03-06 20:20:22 6282 65

原创 最强模型Claude 3 Haiku速通指南在此!保姆级教学拿脚都能学会!

最强模型Claude 3 Haiku速通指南在此!保姆级教学拿脚都能学会!

2024-03-06 20:17:31 5563 68

原创 【Spring底层原理高级进阶】Spring Kafka:实时数据流处理,让业务风起云涌!️

Spring Kafka 是 Spring Framework 提供的一个集成 Apache Kafka 的库,用于构建基于 Kafka 的实时数据流处理应用程序。Apache Kafka 是一个高性能、分布式的流数据平台,广泛用于构建可扩展的、实时的数据处理管道。

2024-03-05 16:31:42 6790 33

原创 【bug日记】已解决:Invalid bound statement (not found): 找不到对应的Mapper映射类

已解决:Invalid bound statement (not found): 找不到对应的Mapper映射类

2024-03-05 11:39:52 5979 6

原创 【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解

Spring Batch是一个基于Java的开源批处理框架,用于处理大规模、重复性和高可靠性的任务。它提供了一种简单而强大的方式来处理批处理作业,如数据导入/导出、报表生成、批量处理等。什么是Spring Batch?Spring Batch旨在简化批处理作业的开发和管理。它提供了一种可扩展的模型来定义和执行批处理作业,将作业划分为多个步骤(Step),每个步骤又由一个或多个任务块(Chunk)组成。通过使用Spring Batch,可以轻松处理大量的数据和复杂的业务逻辑。

2024-03-04 12:59:39 6846 52

原创 【Spring云原生】Spring官宣,干掉原生JVM,推出 Spring Native!整体提升性能!Native镜像技术在Spring中的应用

Native镜像技术是一种将Java应用程序编译成本地可执行文件的技术。它的原理是通过静态编译将整个Java应用程序及其依赖项转换为本地机器代码,从而实现更快的启动时间和较小的内存占用。Spring Native的主要目标是通过将Spring应用程序编译为本地镜像,提供更快的启动时间、更低的内存消耗和更好的资源利用率。通过消除JVM启动和解释阶段的开销,Spring Native可以显著减少应用程序的启动时间,并减少内存占用。MyClass。

2024-03-04 12:37:34 6565 10

原创 【算法沉淀】刷题笔记:并查集 带权并查集+实战讲解

当谈论并查集时,我们可以继续使用上述的动物园比喻来解释它的概念。我们可以把并查集看作是一个动物园管理系统,帮助你管理动物们的归属关系。在这个动物园中,每个动物都有一个独特的编号,代表一个独立的元素。一开始,每个动物都是独立的,没有与其他动物建立关系。初始化(Init()函数)就像是给每个动物分配一个编号和一个独立的笼子。这样,它们就有了一个起始的归属地。查找函数(Find()函数)就像是动物们在寻找自己所属的笼子。当你给一个动物的编号,它会告诉你它所在的笼子。这样,你可以快速找到任何动物所属

2024-03-03 19:21:57 5865 12

空空如也

空空如也

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

TA关注的人

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