自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 快排算法实现

此时我们已经将原来的序列,以6为分界点拆分成了两个序列,左边的序列是“3 1 2 5 4”,右边的序列是“9 7 10 8”。OK,现在3已经归位。对序列“2 1”以2为基准数进行调整,处理完毕之后的序列为“1 2”,到此2已经归位。此时以基准数6为分界点,6左边的数都小于等于6,6右边的数都大于等于6。回顾一下刚才的过程,其实哨兵j的使命就是要找小于基准数的数,而哨兵i的使命就是要找大于基准数的数,直到i和j碰头为止。请将这个序列以3为基准数进行调整,使得3左边的数都小于等于3,3右边的数都大于等于3。

2024-07-26 17:15:23 678

原创 Mybatis-plus学习|性能分析插件、条件构造器、代码自动生成器

我们在平时的开发中,会遇到一些慢sql。测试!druid….MP也提供性能分析插件,如果超过这个时间就停止运行!1、导入插件该插件只允许在开发和测试环境中使用,故先设置开发环境为开发模式在MP配置类中注册这个插件,设置sql执行的最大时间,以及让sql语句标准化的输出在日志中之后看sql日志,会看起来很规整,并且有sql语句的执行时间,只要超出了设置的最大执行时间,就会抛出异常。

2024-06-25 20:12:01 484

原创 Mybatis-Plus学习|快速入门CRUD、主键生成策略(雪花算法、主键自增等)、自动填充、乐观锁、分页插件、逻辑删除

为什么要学习它呢?MyBatisPlus可以节省我们大量工作时间,所有的CRUD代码它都可以自动化完成!偷懒的!MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

2024-06-25 18:15:51 938

原创 JVM学习|JVM的位置、JVM的体系结构、类加载器、双亲委派机制、沙箱安全机制、本地方法栈、PC寄存器、方法区、堆(OOM内存溢出问题、GC:垃圾回收、复制算法、标记清除算法、标记压缩算法)

jvm实际上可理解为运行在操作系统之上的软件。

2024-06-23 23:40:37 1050

原创 电脑蓝屏修复|你的设备遇到问题,需要重启。我们只收集某些错误信息,然后为你重新启动。100% 完成 终止代码: 0xc000021a

今天莫名其妙电脑打不开了,一直如上图所示蓝屏,重启也不行问了某电脑店的客服,说修复需要50元,真黑啊,果断自己搜方法,怒省50大洋hh。

2024-06-21 18:08:26 5650 1

原创 Redis学习|Redis主从复制、Redis哨兵模式、缓存穿透、缓存击穿、缓存雪崩概念和相应解决方法

主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave 以读为主。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点主从复制的作用主要包括:1、数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。

2024-06-20 15:30:13 1222

原创 Redis学习|Redis.conf详解、Redis持久化(RDB、AOF)、Redis发布订阅

如果Enable AOF,好处是在最恶劣情况下也只会丢失不超过两秒数据,启动脚本较简单只load自己的AOF文件就可以了,代价一是带来了持续的IO,二是AOF rewrite 的最后将 rewrite 过程中产生的新数据写到新文件造成的阻塞几乎是不可避免的。2、AOF 持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以Redis 协议追加保存每次写的操作到文件未尾,Redis还能对AOF文件进行后台重写,使得AOF文件的体积不至于过大。

2024-06-20 13:02:43 841

原创 Redis学习|Jedis、SpringBoot整合Redis

我们要使用Java 来操作 Redis,知其然并知其所以然,授人以渔!学习不能急躁,慢慢来会很快!什么是Jedis 是 Redis 官方推荐的java连接开发工具!使用java 操作Redis 中间件!如果你要使用 java操作redis,那么一定要对Jedis 十分的熟悉!连接数据库操作命令断开连接!StringListSetHashZset所有的api命令,就是我们对应的上面学习的指令,一个都没有变化!SpringBoot操作数据:spring-data jpa jdbc mongodb

2024-06-19 21:25:44 359

原创 Redis学习|Redis基础知识、Redis五大数据类型、Redis三种特殊数据类型、Redis事务

redis默认有16个数据库,并且这个数量可以在conf配置文件中更改默认使用的是第0个可以使用 select 进行切换数据库!key *查看数据库所有的key清除当前数据库 flushdb清除全部数据库的内容FLUSHALL。

2024-06-19 17:15:17 877

原创 Redis学习|Redis 是什么、Redis 能干嘛、Window安装Redis、Linux下安装Redis、Redis测试性能

Redis(Remote Dictionary Server),即远程字典服务!是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API.redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。免费和开源!是当下最热门的 NoSQL技术之一!也被人们称之为结构化数据库!

2024-06-19 10:35:05 485

原创 前端项目打包部署

vue-cli脚手架的前端项目,点击npm脚本中的第二条编译命令,即可将项目编译,生成一个dist的文件夹,里面存放的就是编译好的前端项目文件,没有脚手架就在终端敲击npm run build命令编译前端项目。

2024-06-12 14:18:48 359

原创 Vue学习|vue-cli前端脚手架、Element使用及案例、Vue路由使用及案例

Element:是饿了么团队研发的,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。组件:组成网页的部件,例如 超链接、按钮、图片、表格、表单、分页条等等。官网:https://element.eleme.cn/#/zh-CNListener。

2024-06-12 11:08:22 1225

原创 Vue学习|Vue快速入门、常用指令、生命周期、Ajax、Axios

Vue 是一套前端框架,免除原生JavaScript中的DOM操作,简化书写基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上。官网:https://v2.cn.vuejs.org/

2024-06-10 15:02:11 886

原创 JavaScript学习|JavaScript 引入方式、JavaScript 基础语法、JavaScript 对象、BOM、DOM、事件监听、事件绑定

Browser Object Model 浏览器对象模型JavaScript 将浏览器的各个组成部分封装为对象组成:Window:浏览器窗口对象.Navigator:浏览器对象Screen:屏幕对象.History:历史记录对象Location:地址栏对象。

2024-06-10 13:05:59 913

原创 CSS学习|css三种导入方式、基本选择器、层次选择器、结构伪类选择器、属性选择器、字体样式、文本样式

css程序都是在style标签中书写打开该网页,可以看到h1标签中的我是标题被渲染成了红色可以在同级目录下创建一个css目录,专门存放css文件,可以和html分开编写然后在html页面中,利用link标签以及css文件地址,将该css文件引入html中,达到上述同样效果也可用下述import方式引入外部的css文件css的优势:1、内容和表现分离2、网页结构表现统一,可以实现复用3、样式十分的丰富4、建议使用独立于html的css文件。

2024-06-05 16:49:46 493

原创 HTML学习|初识表单post和get提交、文本框和单选框、按钮、多选框和下拉框、文本域和文件域、搜索框滑块和简单验证、表单的应用、表单初级验证

form标签是表单,method控制表单提交方式,get方式,表单填写的参数能够在跳转的url地址中看到,post方式是看不到的,action是向何处跳转表单数据input标签,且type=text,是文本输入框,name设置的就是这个输入内容的参数名称input标签,且type=password,是密码输入框,这个输入内容在页面上会变成保密的形式input标签,且type=submit代表这是一个表单的提交按钮,value可以设置这个按钮的名称。

2024-05-09 01:23:07 871

原创 HTML学习|网页基本信息、网页基本标签、图像标签、超链接标签、列表标签、表格标签、媒体元素、页面结构分析、iframe内联框架

DOCTYPE是设置使用什么规范,网页整个信息都在html标签中,head标签里包含字符集设置,网页介绍等信息,title标签是网页的名称,网页的主干都在body标签中。

2024-05-08 23:56:12 432

原创 VMware Tools 启动脚本未能在虚拟机中成功运行。如果您在此虚拟机中配置了自定义启动脚本,请确保该脚本没有错误。您也可以提交支持请求,报告此问题。

敲入df -a命令,查看磁盘使用情况,查看 /dev/mapper/centos-root 是否100%,是的话清内存。可以选择清理不重要的缓存,我选择直接清理/var/log目录下的所有缓存文件,命令:sudo rm -rf /var/cache/*,清理之后使用df -hm 命令发现磁盘使用率降到了98%,之后关闭虚拟机再次打开就发现问题解决了。今天打开centos7虚拟机就是直接打不开了报了下面的错误,也没有动任何东西,点确定后,也是依然没有反应。敲入你自己设置的虚拟机密码,连接上虚拟机。

2024-01-05 20:19:57 2417 1

原创 微服务学习|elasticsearch:数据聚合、自动补全、数据同步

需求:搜索页面的品牌、城市等信息不应该是在页面写死,而是通过聚合索引库中的酒店数据得来的在IUserService中定义一个方法,实现对品牌、城市、星级的聚合,方法声明如下实现类中编写具体的业务方法将选中部分代码抽取出来成为一个单独的方法然后发请求,解析结果把解析结果这部分的代码抽取出来,因为后面要对品牌brandAgg、城市cityAgg、星级starAgg的聚合结果都解析一下,抽取方便调用,代码简化。

2023-12-11 19:43:58 1208

原创 微服务学习|DSL查询语法、搜索结果处理、RestClient查询文档、黑马旅游案例

学习elasticsearch的DSL查询语法,并在idea中用RestClient调用相应的DSL查询语句,最后完成一个黑马旅游的案例

2023-12-01 21:50:53 1111

原创 微服务学习|初识elasticsearch、操作索引库、文档操作、RestClient操作索引库、RestClient操作文档

ES官方提供了各种不同语言的客户端,用来操作ES。这些客户端的本质就是组装DSL语句,通过http请求发送给ES。官方文档地址: https://www.elastic.co/guide/en/elasticsearch/client/index.html。

2023-11-29 17:10:22 1360

原创 微服务学习|初识MQ、RabbitMQ快速入门、SpringAMQP

MQ(MessageQueue),中文是消息队列,字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。简单来讲,Kafka对并发场景性能更高,但是没有RabbitMQ安全,所以一般情况下就用RabbitMQ就可,中规中矩。流程如下:1.在父工程中引入spring-amqp的依赖2.在publisher服务中利用RabbitTemplate发送消息到simple.queue这个队列3.在consumer服务中编写消费逻辑,绑定simple.queue这个队列。

2023-11-24 14:57:09 1905

原创 微服务学习|初识Docker、使用Docker、自定义镜像、DockerCompose、Docker镜像仓库

Docker是一个快速交付应用、运行应用的技术:1.可以将程序及其依赖、运行环境一起打包为一个镜像可以迁移到任意Linux操作系统2.运行时利用沙箱机制形成隔离容器,各个应用互不干扰3.启动、移除都可以通过一行命令完成,方便快捷镜像是分层结构,每一层称为一个LayerDockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。1.Dockerfile的本质是一个文件,通过指令描述镜像的构建过程。

2023-11-22 17:33:43 648

原创 微服务学习|Gateway网关:网关作用、快速入门、路由断言工厂、路由过滤器配置、全局过滤器、过滤器执行顺序、跨域问题处理

需求:定义全局过滤器,拦截请求,判断请求的参数是否满足下面条件:参数中是否有authorizationauthorization参数值是否为admin如果同时满足则放行,否则拦截调用该接口并携带响应参数,发现可以调用参数携带错误,发现调用不了。

2023-11-20 17:46:47 485

原创 微服务学习|Feign:快速入门、自定义配置、性能优化、最佳实践

Feign是一个声明式的http客户端,官方地址: https://github.com/OpenFeign/feign之前服务消费者orderservice调用userservice微服务的方式用Fegin的方式之后,可以看到代码更加简洁Feign运行自定义配置来覆盖默认配置,可以修改的配置如下。

2023-11-20 16:37:16 545

原创 微服务学习|Nacos配置管理:统一配置管理、配置热更新、配置共享、搭建Nacos集群

配置获取的步骤如下,首先需要先去Nacos中读取配置中心的配置,再去读取本地的配置,如何让项目先知道Nacos的地址呢,我们需要新建一个bootstrap.yml的配置文件写在项目中,这个配置文件,默认是最先读到的,里面填写Nacos的地址,可让项目提前知道Nacos的地址,从而读取配置中心配置。先在对应的服务里,引入Nacos的配置管理客户端依赖,然后在该服务的resource目录添加bootstrap.yml文件,内容大概就是,该服务对应在配置中心的配置名,以及Nacos配置中心的地址端口。

2023-11-20 13:42:26 903

原创 微服务学习 | Ribbon负载均衡、Nacos注册中心、微服务技术对比

namespace用来做环境隔离每个namespace都有唯一id不同namespace下的服务不可见都支持服务注册和服务拉取都支持服务提供者心跳方式做健康检测。

2023-11-17 21:08:23 1053

原创 微服务学习 | Eureka注册中心

基于RestTemplate发起的http请求实现远程调用http请求做远程调用是与语言无关的调用,只要知道对方的ip、端口、接口路径、请求参数即可。

2023-11-17 20:09:25 1732

原创 SSM整合(细节拉满)|将Mybatis、Spring、SpringMVC三个框架整合起来,通过一个demo来练习

SSM整合以及实现一个小demo,太细节了,谁看谁会

2023-09-20 21:49:19 446

原创 SpringMVC学习|JSON讲解、Controller返回JSON数据、Jackson、JSON乱码处理、FastJson

JSON(JavaScript Object Notation,JS 对象标记)是一种轻量级的数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。在JavaScript 语言中,一切都是对象。因此,任何JavaScript 支持的类型都可以通过JSON来表示,例如字符串、数字、对象、数组等。

2023-09-15 14:43:58 790

原创 SpringMVC学习|注解版的SpringMVC、RestFul风格、SpringMVC结果跳转方式、实现转发和重定向、数据处理、数据显示到前端、前端提交的中文信息接收后乱码问题解决

创建一个过滤器类,在过滤器中设置请求与相应的编码格式为utf-8。在web.xml中注册这个过滤器,注意这里过滤的路由不是/,而应该是/*,不然不会处理路由里的jsp,

2023-09-14 17:08:21 163

原创 SpringMVC学习|Servlet回顾、理解SpringMVC小demo、SpringMVC原理

创一个空的maven父工程,导入相关依赖,测试的、spring的、servlet的、jsp以及jstl标签的。创建一个空的maven子项目,并添加web支持为了保险起见,在子项目中添加servlet和jsp的依赖编写一个Servlet类,实现HttpServlet接口获取前端参数,以及重定向,这里为了方便先不做业务层调用。根据重定向的地址在对应文件夹下编写相应jsp页面文件,直接在session里取msg的信息显示出来在web.xml中配置我们刚编写的Servlet的路由。

2023-09-13 14:46:45 424

原创 Spring学习|使用Spring实现AOP,三种方式:原生Spring API接口、自定义类、注解方式

自己自定义个类,里面设置一个方法执行前的操作(before方法),以及一个方法执行后的操作(after方法)在bean.xml中配置,注册我们刚才自定义的类,将其定义为切面,定义切点,然后配置切面的方法以及对应加入的切点。编写测试类,获得context对象,调用getBean方法,获取到增删改查类的接口,并调用相关方法,发现也可以加强。

2023-09-12 18:47:54 242

原创 Spring学习|使用JavaConfig实现bean配置、代理模式:静态代理模式、动态代理模式(通俗易懂)

代理模式好处:可以使真实角色的操作更加纯粹!不用去关注一些公共的业务公共业务就交给代理角色!实现了业务的分工!公共业务发生扩展的时候,方便集中管理!静态代理缺点:一个真实角色就会产生一个代理角色;代码量会翻倍~开发效率会变低动态代理优点:一个动态代理类代理的是一个接口,一般就是对应的一类业务,一个动态代理类可以代理多个类(多个真实角色),只要是实现了同一个接口即可!

2023-09-12 14:53:56 724

原创 Spring学习|Bean的作用域、自动装配Bean、注解实现自动装配、Spring注解开发

单例模式(Spring默认机制)原型模式:每次从容器中get的时候,都会产生一个新对象!

2023-09-07 15:25:46 162

原创 Spring学习|Spring配置:别名、import、依赖注入:构造器注入、Set方式注入(重点)、拓展方式注入

我们可以在bean.xml中用alias标签给bean对象起一个别名,当我们在客户端通过context对象使用getBean方法获取对象时,可以通过这个别名获取,另一种方式是,可以在

2023-09-07 12:18:34 238

原创 Spring学习|Spring简介、IOC控制反转理解、IOC创建对象方式

故我们可以知道,我们配置的实体类在配置文件加载的时候,容器中管理的对象就已经初始化了!

2023-09-05 14:45:35 366

原创 Mybatis学习|Mybatis缓存:一级缓存、二级缓存

MyBatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存。缓存可以极大的提升查询效率。MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存默认情况下,只有一级缓存开启。(SqlSession级别的缓存,也称为本地缓存)二级缓存需要手动开启和配置,他是基于namespace级别的缓存。为了提高扩展性,MyBatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级缓存。

2023-09-04 21:28:43 942

原创 Mybatis学习|动态sql、动态sql标签

什么是动态SQL: 动态SQL就是指根据不同的条件生成不同的SQL语句动态SQL就是在拼接SQL语句,我们只要保证SQL的正确性,按照SQL的格式,去排列组合就可以了!

2023-09-03 21:10:51 130

原创 Mybatis学习|多对一、一对多

有多个学生,没个学生都对应(关联)了一个老师,这叫(多对一)对于每个老师而言,每个老师都有N个学生(学生集合),这叫(一对多)

2023-09-03 19:30:19 382

空空如也

空空如也

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

TA关注的人

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