自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL高级之锁篇

在数据库中,除传统的计算资源(如 CPU 、 RAM 、 I/O 等)的争用以外,数据也是一种供许多用户共享的资源。为保证数据的一致性,需要对进行控制 ,因此产生了锁。同时锁机制也为实现MySQL的各个隔离级别提供了保证。锁冲突也是影响数据库并发访问性能的一个重要因素。所以锁对数据库而言显得尤其重要,也更加复杂。数据库的锁是为了解决事务的隔离性问题,为了让事务之间相互不影响,每个事务进行操作的时候都会对数据加上一把特有的锁,防止其他事务同时操作数据。

2024-03-12 11:14:41 641 1

原创 MySQL高级之事务篇

数据库中的事务是指对数据库执行一批操作,在同一个事务当中,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功的情况。

2024-03-12 10:29:16 926

原创 RabbitMQ死信 03

死信队列是指那些由于某种原因未能被正确处理的消息所进入的队列。在实际应用中,我们可以通过死信队列来处理一些异常情况下的消息,保证消息的可靠性与完整性。了解了RabbitMQ中的死信队列与延迟队列,从概念到实践,从原理到应用,合理地使用死信队列与延迟队列,能够帮助我们更好地构建可靠、高效的消息系统。

2024-01-25 16:52:25 1340 1

原创 “高级SPA项目构建与路由实现“

本文介绍了如何构建一个高级的SPA项目,并实现路由功能和嵌套路由功能。通过合理的项目结构和路由配置,我们可以更好地组织和管理SPA项目的代码,提供更好的用户体验和开发效率。

2024-01-23 23:18:18 877

原创 “深入理解RabbitMQ交换机的原理与应用“

RabbitMQ是一个开源的消息代理软件,它遵循AMQP(高级消息队列协议)标准,用于在分布式系统中存储和转发消息。作为消息中间件,RabbitMQ扮演着消息传递和消息队列的角色,允许应用程序之间进行异步通信。RabbitMQ交换机作为消息中间件的核心组件,其灵活的路由规则和丰富的特性为分布式系统和微服务架构提供了强大的消息通信支持。通过深理解RabbitMQ交换机的原理和应用,可以更好地设计和构建可靠的消息传递系统,为复杂的应用场景提供稳定高效的消息通信机制。

2024-01-23 23:02:08 1325 2

原创 构建高可用消息队列系统 01

RabbitMQ是一个开源的消息代理软件,实现了高级消息队列协议(AMQP),并提供了可靠的消息传递、灵活的路由、消息确认机制等特性。它是一个强大的工具,用于构建分布式系统中的异步通信和解耦,同时也适用于构建大规模的数据处理系统。RabbitMQ的核心概念包括交换机、队列、绑定等,通过这些概念,可以实现灵活的消息路由和处理。在分布式系统中,RabbitMQ能够提供高可用性、可靠性和灵活性,使得系统能够更好地应对高并发和大规模数据处理的挑战。

2024-01-20 18:36:07 963

原创 “深入理解 Docker 和 Nacos 的单个部署与集成部署“

Docker 是一种容器化平台,它允许开发人员将应用程序及其依赖项打包到一个可移植的容器中,然后发布到任何支持 Docker 的环境中。Docker 的工作原理是利用 Linux 内核的 cgroups 和 namespaces 功能,通过将应用程序和其依赖项打包到容器中,实现了应用程序与其运行环境的隔离,从而实现了跨平台的部署。Nacos 是阿里巴巴开源的一款服务发现、配置管理和服务管理平台。其核心功能包括服务发现与注册、动态配置管理、服务健康监测和流量管理。

2024-01-19 00:48:38 1284 1

原创 “深度剖析Nginx的高级部署“

Nginx(发音"engine-x")是一款高性能、开源、跨平台的Web服务器,也可用作反向代理服务器、负载均衡器和HTTP缓存。由俄罗斯的程序设计师Igor Sysoev创建,并于2004年首次公开发布。其特点包括占用资源少、高并发、高性能以及灵活的配置等,使其在大流量的网络环境中表现出色。通过深入学习Nginx的高级部署与优化技巧,我们不仅能够搭建高性能、高可用的Web服务,还能有效提升系统的安全性与稳定性。在日益复杂的网络环境中,对Nginx的深度理解将成为系统架构师和运维工程师不可或缺的技能之一。

2024-01-18 12:58:18 1027

原创 “深入理解网络科学与自定义网络构建“

在计算机科学中,网络是一种将多个设备连接在一起,实现信息共享和通信的技术。网络的发展可以追溯到20世纪,最早用于军事通信。随着互联网的普及,网络变得无处不在。现代网络分层模型包括OSI模型和TCP/IP模型,每一层都有特定的功能和责任。创建两个容器ip:172.17.0.2和172.17.0.3在03是能ping到02的案例:我的文件夹/soft,先清空,然后放war包然后运行下面代码此时访问项目会报错,因为没有连接MySQL新建文件在conf里面放入my.cnf。

2024-01-17 12:07:09 1106 1

原创 构建镜像:探索容器化应用部署的核心技术

本篇博客深入探讨了构建镜像的核心技术和相关内容,涵盖了构建镜像的基础知识、高级技术、最佳实践和工具等方面。通过对容器化应用部署的背景和意义进行介绍,读者可以全面了解容器化技术的优势和挑战,以及构建镜像在其中的重要作用。同时,针对不同阶段的读者,本博客也涵盖了从基础知识到高级技术的全方位讲解,帮助读者提升对构建镜像的掌握和应用能力。在最后的总结部分,也对未来容器化应用部署技术的发展趋势进行了展望,希望能够为读者提供更多的思考和启发。

2024-01-15 17:24:25 887 1

原创 Docker数据卷与拦截与目录拦截

为了很好的实现数据保存和数据共享,Docker提出了Volume这个概念,简单的说就是绕过默认的联合文件系统,而以正常的文件或者目录的形式存在于宿主机上。又被称作数据卷。数据卷 可以在容器之间共享和重用对 数据卷 的修改会立马生效对 数据卷 的更新,不会影响镜像数据卷 默认会一直存在,即使容器被删除创建数据卷查看所有数据卷查看数据卷信息删除一个volume数据卷 是被设计用来持久化数据的,它的生命周期独立于容器,Docker不会在容器被删除后自动。

2024-01-12 21:53:41 1197 1

原创 Docker介绍安装及使用

Docker是一种开源的容器化技术,最初由Docker Inc.公司开发,其主旨在于为应用程序开发提供更加快速、便捷、一致的运行环境。Docker可以将应用程序及其依赖项打包为容器,在不同的系统上运行,实现了代码的跨平台移植性。Docker这一容器化技术将应用程序的开发、部署和交付的流程变得更加高效、灵活和便捷,并且能够支持微服务架构、多环境开发、应用程序打包和交付、云部署等多种应用场景。希望本文能够帮助读者深入了解Docker的特点与优势,并在实践中运用Docker来完成各种应用场景。

2024-01-12 00:39:01 1023

原创 OAuth2.0入门(01)

掌握OAuth2.0的基础概念、工作流程以及实践应用,为今后在实际项目中安全地使用OAuth2.0提供了坚实的理论基础和实践指导。OAuth2.0的深度解析与实践。

2023-12-25 14:17:23 920

原创 SpringSecurity深度解析与实践(3)

基于角色的授权:以用户所属角色为基础进行授权,如管理员、普通用户等,通过为用户分配角色来控制其对资源的访问权限。基于资源的授权:以资源为基础进行授权,如 URL、方法等,通过定义资源所需的权限,来控制对该资源的访问权限。Spring Security 提供了多种实现授权的机制,最常用的是使用基于注解的方式,建立起访问资源和权限之间的映射关系。其中最常用的两个注解是@Secured和。@Secured注解是更早的注解,基于角色的授权比较适用,基于SpEL。

2023-12-23 23:41:48 996

原创 SpringSecurity深度解析与实践(2)

创建自定义MD5加密类并实现@Override//对密码进行 md5 加密@Override// 通过md5校验修改@Bean// 自定义MD5加密方式:数据库中的用户密码也需要更换成对应自定义MD5//MD5自定义加密方式:最后,将生成的MD5加密密码保存到数据库表中。CSRF,跨站请求伪造)是一种利用用户已登录的身份在用户不知情的情况下发送恶意请求的攻击方式。

2023-12-21 22:45:30 931 2

原创 SpringSecurity深度解析与实践(1)

是一个基于Spring框架的安全性框架,可用于对Java应用程序进行身份验证、授权和其他安全性功能的添加。它不仅可以对Web应用程序进行保护,还可以保护非Web环境下的应用程序,如远程服务和命令行应用程序等。提供了一系列可插拔的安全性特性,如基于标记的身份验证、权限控制、单点登录、密码加密等。它还支持多种安全性协议和标准,如OAuthSAMLOpenID等,可与各种身份提供商集成。## 1.2 SpringSecurity核心原理。

2023-12-20 20:00:26 899

原创 深度探索Swagger2:从介绍到多环境应用

Swagger2是一种用于设计、构建和文档化RESTful API的工具,它使用简单的注解来描述API的结构和功能。通过Swagger2,开发者可以轻松地生成交互式的API文档,并且可以直接在文档中进行API的调试和测试。通过本文的介绍,读者可以全面了解Swagger2的介绍、基本应用以及多环境应用。Swagger2作为一种强大的RESTful API文档化工具,为开发者提供了便捷的方式来描述、调试和测试API,极大地提高了开发效率和API的可维护性。

2023-12-20 12:14:01 808

原创 构建高效持久层:深度解析 MyBatis-Plus(02)

中的逻辑删除(Logical Delete)是在数据库中进行虚拟删除,即实际删除数据时,并不会将数据从数据库中删除,而是通过一个标记来记录其已被删除。这种删除方式称为逻辑删除或软删除。乐观锁( Optimistic Locking )和悲观锁是数据库中的两种并发控制机制。乐观锁假定数据一般情况下不会发生冲突,因此在读取数据时不会对其加锁,而是在写入时先比较数据版本号(比如时间戳)是否相同,再进行操作。如果版本号相同,则表示该数据没有被其他进程修改,可以进行写操作;

2023-12-18 15:41:51 974

原创 构建高效持久层:深度解析 MyBatis-Plus(01)

(简称 MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。它提供了一些常用功能的增强,使得开发者可以更加便捷地进行数据库访问操作。我们的愿景是成为MyBatis最好的搭档,就像魂斗罗中的1P2P,基友搭配,效率翻倍。通过本文的深度解析,我们全面了解了MyBatis-Plus的基础概念、核心特性以及高级应用场景。MyBatis-Plus作为MyBatis的增强工具,不仅简化了基础操作,还提供了丰富的高级功能,助力开发者更高效地进行数据库操作。

2023-12-16 10:46:58 885

原创 构建强大应用的引擎:深度解析Spring Boot Starter机制

SpringBoot中的starter是一种非常重要的机制(自动化配置),能够抛弃以前繁杂的配置,将其统一集成进starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启动相应的默认配置。starter让我们摆脱了各种依赖库的处理,需要配置各种信息的困扰。SpringBoot会自动通过classpath路径下的类发现需要的Bean,并注册进IOC容器。

2023-12-15 16:15:16 919

原创 深入解析Freemarker模板引擎及其在Spring Boot中的高级整合

FreeMarker 是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。模板编写为FreeMarker Template Language (FTL)。它是简单的,专用的语言,不是像PHP那样成熟的编程语言。那就意味着要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板显示已经准备好的数据。

2023-12-13 20:59:02 1611

原创 SpringBoot应用开发指南(01)

众所周知 Spring 应用需要进行大量的配置,各种 XML 配置和注解配置让人眼花缭乱,且极容易出错,因此 Spring 一度被称为“配置地狱”。为了简化 Spring 应用的搭建和开发过程,Pivotal 团队在 Spring 基础上提供了一套全新的开源的框架,它就是Spring Boot。只是为了提升Spring开发者的工具,特点:敏捷式、快速开发。

2023-12-12 22:33:19 914

原创 “Git实践指南:深入探索开发测试上线、分支管理与标签“

通过本篇博客的深度讲解,我们详细探索了Git的高级使用技巧,包括开发测试上线流程、分支管理和标签的应用。希望读者能够从中获得实际可行的工具和方法,提升团队的协作效率、代码质量和发布过程的可靠性。请注意,以上只是每个知识点的概述,您可以根据需要进一步扩展和深入研究每个主题。祝愿您在Git实践中取得更好的成果!

2023-11-11 20:11:28 458

原创 “GUI图形化界面的魅力、SSH协议的安全通信与IDEA集成Git的高效开发“

SSH(Secure Shell)是一种通过加密建立安全连接的网络协议。它主要用于远程登录和执行网络操作,可以在不安全的网络中建立加密的通信信道。SSH提供了一种安全的方式,使得客户端和服务器之间可以进行加密的通信,避免了传统的telnet和rlogin等协议中的明文传输问题。通过SSH,用户可以通过远程终端或图形化界面连接到其他电脑或设备,并在远程环境中执行命令、传输文件等操作。SSH使用公钥加密和私钥解密的方式来进行身份验证和加密通信,确保了数据的机密性和完整性。

2023-11-10 21:44:51 229

原创 “Git 在团队协作中的优化实践“

Git 是一个分布式版本控制系统,由于其卓越的性能和强大的功能,成为了软件开发行业的标准。在本节中,我们将介绍 Git 的基本概念、原理和工作流程,并讨论为什么 Git 在技术上如此优秀。Git 是一款优秀的分布式版本控制工具,在团队协作中发挥着重要的作用。为了更好的使用 Git,我们需要掌握一些常用的命令和理解 Git 的工作原理和数据模型。并通过实践和优化,探索出适合团队协作的代码管理流程和规范,提高团队协作效率。

2023-11-09 20:59:29 181

原创 “Redis与Spring整合及缓存优化“

在现代应用开发中,缓存是提升性能和扩展性的关键技术之一。而Redis作为一种高性能、内存存储型数据库,与Spring框架的结合可以带来更加优雅和灵活的缓存解决方案。本篇博客将深入探讨Spring整合Redis的方法和最佳实践,并重点介绍Redis注解式缓存以及解决常见的Redis问题

2023-11-07 11:25:31 501

原创 “Java与Redis的默契舞曲:优雅地连接与存储数据“

本文介绍了Java与Redis的默契舞曲,详细讲解了如何连接Java与Redis,并展示了如何使用Java存储不同类型的数据,包括String、hash、list、set和zset。通过学习本文,您将掌握与Redis进行高效数据存储和访问的技巧,为您的软件开发工作提供有力支持。

2023-11-06 00:13:03 131

原创 “Redis在分布式系统中的应用与优化“

Redis是一个开源的、基于内存的数据结构存储系统,它支持多种数据结构,如字符串、哈希表、列表、集合等。Redis具有高性能、高可用性和可扩展性的特点,被广泛应用于缓存、消息队列、计数器等场景。本节将介绍Redis的基本概念和特性,并探讨其在分布式系统中的优势。本篇博客介绍了Redis的简介、安装和常用命令,并重点探讨了Redis在分布式系统中的应用与优化。通过学习Redis的基本概念和特性,我们可以更好地利用Redis提升系统的性能和可扩展性。

2023-11-03 01:38:39 151

原创 “深入理解Nginx的负载均衡与动静分离“

Nginx是一款轻量级的高性能Web服务器和反向代理服务器,由俄罗斯的工程师Igor Sysoev开发。它采用事件驱动的异步非阻塞架构,能够处理大量并发连接,具有出色的性能和稳定性。本节将介绍Nginx的基本概念、特点和安装配置方法。负载均衡动静分离本文深入探讨了Nginx的负载均衡和动静分离的原理与实践。通过对Nginx的基本概念、特点和安装配置的介绍,读者可以更好地理解Nginx的工作原理和使用方法。

2023-11-01 22:31:35 599

原创 “构建高效的Java Web开发环境及前后端分离后台接口部署“

本文介绍了如何构建高效的Java Web开发环境,包括安装JDK和Tomcat,以及安装MySQL数据库。同时,我们还探讨了如何实现前后端分离,并部署后台接口。通过本文的指导,您可以快速搭建开发环境,并开始进行Java Web开发和部署工作。

2023-10-31 20:49:22 222

原创 “探索Linux世界:从CentOS安装到常见命令使用“

本文为您提供了安装CentOS和常见Linux命令的基础知识。通过学习和实践,您将能够自如地操作CentOS系统,并熟练运用各种命令来管理文件、查看系统信息、配置网络等。在进一步的学习中,您可以探索更多Linux的高级主题和应用。希望本文对您有所帮助,祝您在Linux世界中取得不断的进步和成功!

2023-10-30 21:28:49 188

原创 “从部署到优化,打造高效会议管理系统“

本博客详细介绍了如何部署会议OA系统和前后端分离的SPA项目。通过对系统需求分析、硬件软件环境准备、数据库设计与迁移、系统部署与测试的讲解,读者可以获得部署单机项目的全面指导。同时,通过对前后端分离架构概述、前端框架选择与开发、后端API设计与开发和系统集成与部署的讲解,读者可以了解前后端分离项目的实施过程。通过本文的学习,读者将掌握如何打造高效的会议管理系统,并能够根据实际情况进行优化和拓展,以满足企业的需求。

2023-10-27 22:42:00 397

原创 “深入探讨操作系统和虚拟化技术“

操作系统(Operating System,简称OS)是一种系统软件,它是计算机硬件和应用软件之间的桥梁。它管理计算机的硬件和软件资源,为应用程序提供接口和服务,并协调应用程序的运行。操作系统是计算机系统中最基本的软件之一,它控制着计算机的所有活动,包括输入输出、处理数据、管理存储、协调进程和网络通信等。常见的操作系统包括Windows、macOS、Linux、Unix等。VMWare虚拟机是一种常用的虚拟化软件,可以创建和运行多个独立的虚拟操作系统实例。

2023-10-27 00:07:39 226

原创 “微信小程序登录与用户信息获取详解“

微信登录是指通过微信账号进行身份验证,使用户可以使用自己的微信账号登录到第三方应用或网站。微信登录减少了用户注册的繁琐过程,提供了更加便捷的登录体验。本篇博客深入介绍了微信小程序登录的相关概念和实现方式,并重点探讨了微信登录与用户信息获取的区别与联系。通过对微信登录流程、用户授权与登录态维护的理论概念进行解析,结合代码演示和表情包存储问题的解决方案,希望能够帮助开发者更好地理解和应用微信小程序登录功能。

2023-10-23 17:21:23 1423

原创 “编辑微信小程序与后台数据交互与微信小程序wxs的使用“

本篇博客介绍了微信小程序与后台数据交互的方法,包括获取用户信息、发送网络请求和数据缓存。同时,我们还探讨了微信小程序中wxs的使用,以增强小程序的业务逻辑处理能力。通过本文的学习,相信读者对微信小程序开发会有更深入的了解。

2023-10-21 00:14:33 1072

原创 “构建交互式用户界面的自定义组件应用与界面布局设置“

自定义组件是一种可重复使用的代码模块,它封装了特定功能和样式,并可以在多个地方进行调用。加上以下两个tabs.wxml-- 这是自定义组件的内部WXML结构 -->tabs.wxss/* 这里的样式只应用于这个自定义组件 */.tabs {top: 0;flex: 1;*/*/tabs.js/*** 组件的属性列表*/},/**

2023-10-20 00:03:15 298

原创 “Flex弹性布局、轮播图mock遍历数据和首页布局解析与实践“

Flex弹性布局是一种现代的CSS布局模型,它提供了更灵活的方式来排列和对齐项目。通过使用Flex容器和Flex项目,我们可以轻松地实现自适应的布局。本篇博客深入介绍和讨论了Flex弹性布局、轮播图mock遍历数据和首页布局这三个前端技术主题。我们通过详细的解释和实例演示,帮助读者更好地理解和应用这些技术。希望本篇博客能对您在前端开发中有所帮助!

2023-10-17 23:10:55 1078

原创 “高级小程序开发指南“

本篇博客深入介绍了小程序的视图层和逻辑层,并详细展示了它们各自的目录结构及内容扩展。通过对小程序的全面理解,开发者可以更加灵活地运用视图层和逻辑层的功能,提升小程序的用户体验和功能实现。希望本篇博客能为小程序开发者提供一些帮助和指导。补充内容:在实际开发过程中,还需要注重小程序的性能优化、安全防护、版本管理等方面的考虑。同时,不断学习新的开发技术和框架,保持对行业的敏感度和创新意识也是非常重要的。祝愿每位开发者都能在小程序开发的道路上取得进步和成就!

2023-10-16 22:58:29 456

原创 “小程序:改变电商行业的新趋势“

小程序是一种无需下载安装即可使用的应用程序,通过微信等平台直接打开使用,具有轻量化、便捷性和跨平台特点。本篇博客主要介绍了小程序在电商领域的应用与前景。通过对小程序的简介、电商演示和入门案例进行探讨,希望读者能够深入理解小程序的特点和优势,并在实际应用中发挥其潜力,推动电商行业的进一步发展。

2023-10-14 22:39:47 251

原创 “Jwt认证在前后端分离架构中的应用与优化“

JWT是一种基于JSON的开放标准(RFC 7519),定义了一种紧凑且自包含的方式来传递信息。头部(Header)负载(Payload)和签名(Signature)。JWT可以被用于身份验证和授权,也可以传递其他业务相关的信息。本文介绍了JWT的简介、工具类以及通过一个实际案例演示了JWT的应用。JWT作为一种轻量级的身份认证和授权机制,适用于前后分离架构中的应用场景。使用JWT可以简化身份验证和授权流程,并提升系统的安全性和可拓展性。

2023-10-13 16:35:00 142

空空如也

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

TA关注的人

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