自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue中的计算属性和侦听器(监视器)

1.computed有缓存特性,methods没有缓存2.当一个结果依赖其他多个值时,推荐使用计算属性3.当处理业务逻辑时,推荐使用methods方法,比如事件的处理函数watch侦听器的写法有几种?1.简单写法watch: {数据属性名 (newValue, oldValue) {一些业务逻辑 或 异步操作。},'对象.属性名' (newValue, oldValue) {一些业务逻辑 或 异步操作。2.完整写法watch: {// watch 完整写法数据属性名: {

2024-02-02 16:50:43 686

原创 Vue中的指令修饰符&计算属性和方法的区别

1.computed有缓存特性,methods没有缓存2.当一个结果依赖其他多个值时,推荐使用计算属性3.当处理业务逻辑时,推荐使用methods方法,比如事件的处理函数。

2024-02-01 20:39:47 864

原创 Vue中的常用指令

指令(Directives)是 Vue 提供的带有的 特殊 标签。为啥要学:提高程序员操作 DOM 的效率。vue 中的指令按照不同的用途可以分为如下 6 大类:内容渲染指令(v-html、v-text)条件渲染指令(v-show、v-if、v-else、v-else-if)事件绑定指令(v-on)属性绑定指令 (v-bind)双向绑定指令(v-model)列表渲染指令(v-for)指令是 vue 开发中最基础、最常用、最简单的知识点。

2024-02-01 10:31:41 807

原创 什么是Vue & Vue入门案例

基于数据渲染出用户可以看到的界面所谓渐进式就是循序渐进,不一定非得把Vue中的所有API都学完才能开发Vue,可以学一点开发一点所谓框架:就是一套完整的解决方案举个栗子如果把一个完整的项目比喻为一个装修好的房子,那么框架就是一个毛坯房。我们只需要在“毛坯房”的基础上,增加功能代码即可。提到框架,不得不提一下库。库,类似工具箱,是一堆方法的集合,比如 axios、lodash、echarts等框架,是一套完整的解决方案,实现了大部分功能,我们只需要按照一定的规则去编码即可。

2024-01-30 21:16:33 604

原创 Javascript(运算符与表达式、控制语句)

位运算、移位运算⭐️&& ||!⭐️???⭐️...⭐️解构赋值 ⭐️。

2024-01-30 15:40:07 305

原创 第二章. Javascript(变量与数据类型)

function 函数名(参数) {// 函数体return 结果;例。

2024-01-30 13:44:28 858

原创 ES索引库操作

索引库操作有哪些?创建索引库:PUT /索引库名查询索引库:GET /索引库名删除索引库:DELETE /索引库名添加字段:PUT /索引库名/_mapping。

2024-01-29 14:53:59 830

原创 安装elasticsearch、kibana、IK分词器

因为我们还需要部署kibana容器,因此需要让es和kibana容器互联。

2024-01-29 12:14:29 1229

原创 初识elasticsearch

什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API。

2024-01-28 19:13:07 1015

原创 SpringAMQP

Work模型的使用:多个消费者绑定到一个队列,同一条消息只会被一个消费者处理通过设置prefetch来控制消费者预取的消息数量发布订阅的模型如图:可以看到,在订阅模型中,多了一个exchange角色,而且过程略有变化:Publisher:生产者,也就是要发送消息的程序,但是不再发送到队列中,而是发给X(交换机)Exchange:交换机,图中的X。一方面,接收生产者发送的消息。另一方面,知道如何处理消息,例如递交给某个特别队列、递交给所有队列、或是将消息丢弃。

2024-01-27 19:34:43 1082

原创 初识MQ&RabbitMQ快速入门

同步调用的优点:时效性较强,可以立即得到结果同步调用的问题:耦合度高性能和吞吐能力下降有额外的资源消耗有级联失败问题。

2024-01-26 16:37:14 1025

原创 初识Docker(架构、安装Docker)

微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦。分布式系统中,依赖的组件非常多,不同组件之间部署时往往会产生一些冲突。在数百上千台服务中重复部署,环境不一定一致,会遇到各种问题。

2024-01-24 16:00:46 1325

原创 Gateway服务网关

过滤器的作用是什么?① 对路由的请求或响应做加工处理,比如添加请求头② 配置在路由下的过滤器只对当前路由的请求生效defaultFilters的作用是什么?① 对所有路由都生效的过滤器需求:定义全局过滤器,拦截请求,判断请求的参数是否满足下面条件:参数中是否有authorization,authorization参数值是否为admin如果同时满足则放行,否则拦截实现:@Order(-1)@Component@Override// 1.获取请求参数。

2024-01-24 15:12:35 1353

原创 OpenFeign远程调用

使用Feign的步骤:① 引入依赖② 添加@EnableFeignClients注解③ 编写FeignClient接口④ 使用FeignClient中定义的方法代替RestTemplate类型作用说明修改日志级别包含四种不同的级别:NONE(默认)、BASIC、HEADERS、FULL响应结果的解析器http远程调用的结果做解析,例如解析json字符串为java对象请求参数编码将请求参数编码,便于通过http请求发送支持的注解格式默认是SpringMVC的注解失败重试机制。

2024-01-23 19:48:24 1030

原创 Nacos配置管理

Nacos配置更改后,微服务可以实现热更新,① 通过@Value注解注入,结合@RefreshScope来刷新② 通过@ConfigurationProperties注入,自动刷新注意事项:① 不是所有的配置都适合放到配置中心,维护起来比较麻烦② 建议将一些关键参数,需要运行时调整的参数放到nacos配置中心,一般都是自定义配置官方给出的Nacos集群图:其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。我们计划的集群结构:节点ip。

2024-01-22 20:19:20 955

原创 Nacos注册中心

NacosRule负载均衡策略:①优先选择同集群服务实例列表②本地集群找不到提供者,才去其它集群寻找,并且会报警告③确定了可用实例列表后,再采用随机负载均衡挑选实例。

2024-01-21 19:41:13 955

原创 Ribbon负载均衡

SpringCloudRibbon的底层采用了一个拦截器,拦截了RestTemplate发出的请求,对地址做了修改。用一幅图来总结一下:基本流程如下:拦截我们的RestTemplate请求RibbonLoadBalancerClient会从请求url中获取服务名称,也就是user-serviceDynamicServerListLoadBalancer根据user-service到eureka拉取服务列表eureka返回列表,localhost:8081、localhost:8082。

2024-01-20 15:21:11 1167 1

原创 Eureka注册中心

一次业务中,被其它微服务调用的服务。(提供接口给其它微服务):一次业务中,调用其它微服务的服务。(调用其它微服务提供的接口)但是,服务提供者与服务消费者的角色并不是绝对的,而是相对于业务而言。如果服务A调用了服务B,而服务B又调用了服务C,服务B的角色是什么?对于A调用B的业务而言:A是服务消费者,B是服务提供者对于B调用C的业务而言:B是服务消费者,C是服务提供者因此,服务B既可以是服务提供者,也可以是服务消费者。

2024-01-20 14:45:51 1376

原创 微服务-服务拆分和远程调用

任何分布式架构都离不开服务的拆分,微服务也是一样。

2024-01-19 21:05:29 1217

原创 认识微服务

单体架构:简单方便,高度耦合,扩展性差,适合小型项目。例如:学生管理系统分布式架构:松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝微服务:一种良好的分布式架构方案①优点:拆分粒度更小、服务更独立、耦合度更低②缺点:架构非常复杂,运维、监控、部署难度提高SpringCloud是微服务架构的一站式解决方案,集成了各种优秀微服务功能组件。

2024-01-19 20:35:12 849 1

原创 Redis实战之-分布式锁-redission

重入问题是指 获得锁的线程可以再次进入到相同的锁的代码块中,可重入锁的意义在于防止死锁,比如HashTable这样的代码中,他的方法都是使用synchronized修饰的,假如他在一个方法内,调用另一个方法,那么此时如果是不可重入的,不就死锁了吗?所以可重入锁他的主要意义是防止死锁,我们的synchronized和Lock锁都是可重入的。:是指目前的分布式只能尝试一次,我们认为合理的情况是:当线程在获得锁失败后,他应该能再次尝试获得锁。

2024-01-19 15:27:50 810

原创 Redis实战之-分布式锁

分布式锁:满足分布式系统或集群模式下多进程可见并且互斥的锁。分布式锁的核心思想就是让大家都使用同一把锁,只要大家使用的是同一把锁,那么我们就能锁住线程,不让线程进行,让程序串行执行,这就是分布式锁的核心思路那么分布式锁他应该满足一些什么样的条件呢?可见性:多个线程都能看到相同的结果,注意:这个地方说的可见性并不是并发编程中指的内存可见性,只是说多个进程之间都能感知到变化的意思互斥:互斥是分布式锁的最基本的条件,使得程序串行执行高可用:程序不易崩溃,时时刻刻都保证较高的可用性。

2024-01-18 16:07:11 1231

原创 Redis实战之-优惠卷秒杀

由于现在我们部署了多个tomcat,每个tomcat都有一个属于自己的jvm,那么假设在服务器A的tomcat内部,有两个线程,这两个线程由于使用的是同一份代码,那么他们的锁对象是同一个,是可以实现互斥的,但是如果现在是服务器B的tomcat内部,又有两个线程,但是他们的锁对象写的虽然和服务器A一样,但是锁对象却不是同一个,所以线程3和线程4可以实现互斥,但是却无法和线程1和线程2实现互斥,这就是 集群环境下,syn锁失效的原因,在这种情况下,我们就需要使用分布式锁来解决这个问题。

2024-01-17 11:27:08 890

原创 Redis实现全局唯一Id

每个店铺都可以发布优惠券:当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题:id的规律性太明显受单表数据量的限制场景分析:如果我们的id具有太明显的规则,用户或者说商业对手很容易猜测出来我们的一些敏感信息,比如商城在一天时间内,卖出了多少单,这明显不合适。

2024-01-16 20:50:13 617

原创 实战之-Redis商户查询缓存

核心思路如下:修改ShopController中的业务逻辑,满足下面的需求:根据id查询店铺时,如果缓存未命中,则查询数据库,将数据库结果写入缓存,并设置超时时间根据id修改店铺时,先修改数据库,再删除缓存修改重点代码1:修改的queryById方法设置redis缓存时添加过期时间修改重点代码2。

2024-01-15 14:30:12 1025

原创 实战之-Redis代替session实现用户登录

在这个方案中,他确实可以使用对应路径的拦截,同时刷新登录token令牌的存活时间,但是现在这个拦截器他只是拦截需要被拦截的路径,假设当前用户访问了一些不需要拦截的路径,那么这个拦截器就不会生效,所以此时令牌刷新的动作实际上就不会执行,所以这个方案他是存在问题的@Override// 1.获取请求头中的token// 2.基于TOKEN获取redis中的用户// 3.判断用户是否存在// 5.将查询到的hash数据转为UserDTO。

2024-01-14 21:17:48 1006

原创 Redis中的Java客户端

SpringData是Spring中数据操作的模块,包含对各种数据库的集成,其中对Redis的集成模块就叫做官网地址提供了对不同Redis客户端的整合(Lettuce和Jedis提供了统一API来操作Redis支持Redis的发布订阅模型支持Redis哨兵和Redis集群支持基于Lettuce的响应式编程支持基于JDK、JSON、字符串、Spring对象的数据序列化及反序列化支持基于Redis的JDKCollection实现。

2024-01-13 17:06:45 923

原创 Redis常见命令、数据类型

Redis是一个key-value的数据库,key一般是String类型,不过value的类型多种多样。

2024-01-11 15:50:03 968

原创 Redis入门

NoSQL最常见的解释是"", 很多人也说它是"NoSQL仅仅是一个概念,泛指非关系型的数据库区别于关系数据库,它们不保证关系数据的ACID特性NoSQL是一项全新的数据库革命性运动,提倡运用非关系型的数据存储,相对于铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入RedisMemCacheMongoDB等。

2024-01-11 11:05:36 866

原创 InnoDB引擎

① 表空间(ibd文件),一个mysql实例可以对应多个表空间,用于存储记录、索引等数据。② 段,分为数据段(Leaf node segment)、索引段(Non-leaf node segment)、回滚段(Rollback segment),InnoDB是索引组织表,数据段就是B+树的叶子节点,索引段即为B+树的非叶子节点。段用来管理多个Extent(区)。③ 区,表空间的单元结构,每个区的大小为1M。默认情况下,InnoDB存储引擎页大小为16K,即一个区中一共有64个连续的页。

2024-01-10 16:58:24 901

原创 第一章. HTML 与 CSS

Java 程序员一提起前端知识,心情那是五味杂陈,百感交集。说不学它吧,说不定进公司以后,就会被抓壮丁去时不时写点前端代码说学它吧,HTML、CSS、JavaScript 哪个不得下大功夫才能精通?学一点够不够用呢?如果只学基础的 JavaScript 是不够用的,前端都已经工程化了,Vue、React 这些框架你去看吧,光有点基础根本看不懂,甚至连前端页面路径在哪儿配置,如何跳转都不甚了解,所以得学,而且要学的还不少,请把前端当作 web 不可或缺的一部分来学习。

2024-01-09 20:33:49 1151

原创 实战章节:在Linux上部署各类软件

在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,但是并没有一些具体的实操能够串联起来这些知识点。所以,现在我们设计了各类软件在Linux上部署安装的实战章节,可以让同学们:对前面学习的各类操作命令进行复习和练习,从而深度掌握它们本章节中演示部署的软件,包含了IT行业各类岗位中所必须使用的,如:Java后台、大数据开发、运维开发、测试、AI等。无论学习Linux后从事什么岗位,这些内容都会给你带来帮助。

2023-12-13 20:04:51 532

原创 Linux实用操作(超级实用)

环境变量PATH这个项目里面记录了系统执行命令的搜索路径。这些搜索路径我们也可以自行添加到PATH中去。测试:在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件mkhaha通过vim编辑器,在mkhaha文件内填入:echo 哈哈哈哈哈(完成上述操作后,随意切换工作目录,执行mkhaha命令尝试一下,会发现无法执行)

2023-12-12 21:00:23 553

原创 Linux实用操作篇-下篇

Linux实用操作篇-上篇:Linux实用操作-上篇-CSDN博客一、网络传输1.1ping命令

2023-12-11 19:51:40 240 1

原创 Linux实用操作-上篇

Linux某些程序的运行,如果想要强制停止它,可以使用快捷键ctrl + c命令输入错误,也可以通过快捷键ctrl + c,退出当前输入,重新输入。

2023-12-10 21:18:06 218

原创 Linux用户和权限

创建用户组:groupadd 用户组名删除用户组:groupdel 用户组名。

2023-12-10 19:54:45 899

原创 Oracle数据库如何实现自增-序列Sequence介绍(适合小白)

Oracle数据库中的Sequence是一种特殊的数据库对象,可以生成一组等间隔的数值,常用于为表中的行自动生成序列号。Sequence和视图一样,并不占用实际的存储空间,只是在数据字典中保存它的定义信息。Sequence的主要用途是生成表的主键值,也可以在插入语句中引用,或通过查询检查当前值,或使序列增至下一个值。

2023-12-07 15:28:31 3022

原创 Linux基础命令(超全面,建议收藏!)

根目录是最顶级的目录了路径描述的层次关系同样使用来表示/home/itheima/a.txt,表示根目录下的home文件夹内有itheima文件夹,内有a.txt。

2023-12-02 20:34:13 288

原创 Java异常处理

异常的分类编译时异常和运行时异常异常的5个关键字trycatchfinallythrowsthrow异常的捕获顺序,先捕获小的,再捕获大的自定义异常:继承Exception,throw new的时候必须得throws抛出给调用者,相当于提示调用者必须捕获继承throw new的时候不是必须throws抛出给调用者建议:自定义异常尽量继承Exception,提示调用者必须处理异常,但是最终还是根据项目需求来6.方法覆盖和异常的关系。

2023-11-26 20:29:18 727

原创 SpringBoot事务处理

修饰方法时:表示当前的方法开启事务,需要注意只能应用在 public 方法上。修饰类时:表示当前该类下面的所有被 public 修饰的方法都开启事务。默认会回滚运RuntimeException 及其子类Spring 事务传播机制定义了多个包含了事务的方法在相互调用时,事务是如何在这些方法之间进行传递的。

2023-11-26 20:05:45 364

安装elasticsearch、kibana、IK分词器

安装elasticsearch、kibana、IK分词器

2024-01-29

安装elasticsearch、kibana、IK分词器

安装elasticsearch、kibana、IK分词器

2024-01-29

Redis基础资料大全

Redis基础资料大全

2024-01-11

第一章. HTML 与 CSS

第一章. HTML 与 CSS

2024-01-10

周氏工具类之批量导入(自用无敌)

批量导入数据到数据库

2023-12-16

周氏工具类之Excel(自用无敌)

周氏工具类之Excel(自用无敌)

2023-12-16

周氏工具类(新版自用无敌)

excel工具类,新版

2023-12-15

实战章节:在Linux上部署各类软件

实战章节:在Linux上部署各类软件

2023-12-13

Excel工具类(超实用)

Excel工具类(超实用)

2023-12-07

Spring Boot常用注解xmind思维导图

Spring Boot常用注解xmind思维导图

2023-11-23

Maven超级详细文档(依赖管理项目构建工具)

Maven超级详细文档(依赖管理项目构建工具)

2023-11-18

Maven依赖管理项目构建工具(保姆级教学)

Maven依赖管理项目构建工具(保姆级教学)

2023-11-17

空空如也

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

TA关注的人

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