自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 uniapp分包

"subPackages": [{//分包的所有的路径都在该方法中声明。然后需要改一下之前写在一个包中的涉及到页面跳转等一些的路径。然后我们需要把页面放在这个几个分包中。

2023-09-10 19:36:15 516

原创 Shiro入门

Shiro是apache旗下的一个开源安全框架,它可以帮助我们完成身 份认证,授权、加密、会话管理等功能。它有如下特点:易于理解的API简单的身份认证,支持多种数据源简单的授权和鉴权简单的加密API支持缓存,以提升应用程序的性能内置会话管理,适用于Web以及非Web的环境不跟任何的框架或者容器捆绑,可以独立运行认证认证即系统判断用户的身份是否合法,合法可继续访问,不合法则拒绝访问。常见的用户身份认证方式有:用户名密码登录、二维码登录、手机短信登录、脸部识别认证、指纹认证等方式。

2023-07-05 15:33:31 211

原创 在项目中直接使用mybatisplus--代码自动生成器

【代码】在项目中直接使用mybatisplus--代码自动生成器。

2023-07-01 11:42:08 211

原创 RabbitMq的高级特性--RabbitMQ高级特性_消息存活时间

发现并没有被立即删除,但是我们一定要注意第5条消息现在已经不能被消费了,因为mq默认他已经被删除了如果在10秒以后,因为他已经过期了。# 消费端最多拉取1条消息进行消费,这样谁处理的快谁拉取下一条消息,实现了不公平分发。# 消费端最多拉取5条消息进行消费,签收后消费端不满5条才会继续拉取消息。# 消费端最多拉取5条消息进行消费,签收后消费端不满5条才会继续拉取消息。# 消费端最多拉取5条消息进行消费,签收后消费端不满5条才会继续拉取消息。//当i==5的时候我们来设置单条信息的时间。

2023-06-02 08:28:17 447

原创 RabbitMQ集群架构模式

chmod 400 /var/lib/rabbitmq/.erlang.cookie 注意分别在两台机子上实现。find / -name *.cookie 查询到该文件里面是一串字符,我们要让多台机子的该文件的字符一致。使用vim对 /etc/haproxy/haproxy.cfg进行编辑。25672是erlang底层发送消息和分配消息的底层端口。15672是rabbitmq的可视化控制台的端口号。最后可以查看haproxy的暴露的端口。暂停从机的rabbit的服务。然后查找ha的配置文件。

2023-05-31 14:34:37 688

原创 Spring/SpringBoot与RabbitMQ整合

然后在去配置文件: 在创建一个bean然后去加载bean运行:在创建监听器的时候先创建一个实体:实体与生产端一样在到 配置文件中:加+

2023-05-30 16:10:11 737

原创 RabbitMQ六种工作模式01

SMS:WorkProducer:运行: 消费者1:SMSOrder1:赋值三个 三个消费者 SMSOrder1: SMSOrder2: SMSOrder3分别运行: 让每个消费者 做延迟:每个消费者会消费不同的消息: Weather.Java: Baidu.java:Sina.java: 手动添加一个交换机 Baidu.java:Sina.java: TopicProducer.java:Baidu.java

2023-05-29 16:18:15 812

原创 RabbitMQ

rabbitmqctl set_permissions -p / zhangyuexin '.*' '.*' '.*' ------------.*.*.* 这三个的意思分别为:1.配置权限 2.读权限 3.写权限。6. rpm -ivh --nodeps esl-erlang_21.0-1~centos~7_amd64.rpm 安装RPM包。1. 下载esl-erlang_21.0-1~centos~7_amd64.rpm Erlang运行环境RPM包。

2023-05-29 07:56:46 479

原创 Spring Cloud 容错机试 Hystrix 服务降级 RestTemplate:

但是我们还是有个问题,就是Controller中有多个方法需要服务降级,那么我们就要为每一个方法写一个对应的降级方法,这个时候我们就需要写一个通用的全局的服务降级方法。//@HystrixCommand(fallbackMethod = "fallbback") //服务降级对应的方法。这样的话是不太好的我们需要对服务降级的时间进行设置,因为他的默认服务降级的时间是1秒,多于1秒立刻服务降级。@HystrixCommand //找的是上面定义的默认的服务降级的方法。

2023-05-26 15:44:58 1166

原创 SpringCloud:(图书预约的操作)

/获得图书的编号放到隐藏域id为bid的input标签里面。//开始插入借书的记录 ,有个数据要先处理一下 mid。//利用ajax进行访问后台的操作。//把表单中的所有数据记性序列化传给后台。//进行测试打印在控制台。//进行数据的测试操作。

2023-05-25 14:00:30 814

原创 服务间的通信(RestTemplate +Ribbon+Feign):

我们知道Ribbon是负载均衡的客户端,那么他也是具备负载均特性的,所以我们做个测试,先把book项目按照8100端口进行启动,然后回到我们的git里面进行对配置中心的设置把配置中心的端口从8100改成8101再次进行做一个8101服务启动看看我们Ribbon是否能够执行负载均衡的操作,我呢可以debug进行测试。现在的问题是我们刚刚查询出来的根据bid查询的数据并不是给book服务来用的而是给member服务来用的,那么现在我们就要开始应用远程调用的操作了。

2023-05-24 14:37:16 779

原创 项目实战(cloud)--配置中心Config(码云来做一个配置中心)

当然配置中心不仅仅能显示一种yml文件,它还能显示json, properties,xml等格式的文件,你只需要把后缀名切换成json,properties或者是xml即可,但是xml文件不支持暂时。-dev.yml里面的端口还会把member.yml的公共部分现实出来呢,server.port会以member-dev.yml的为准。综上所述我们在配置中心可以设置一个公共的yml文件,然后设置几个不同的配置的yml文件,反问某一个的时候会把公共的部分也进行加载。

2023-05-24 13:47:33 644

原创 网关Netfilx Zuul:---(Eureka高可用操作)

之前我们创建完成了3个Eureka的客户端的服务操作,你会发现我们还是没有能够通过微服来进行对他访问,还是必须通过自己服务的端口号来进行访问,那么我们的微服务是没有能够完成的,这个时候我们就需要通过网关进行操作。其实网关就是为客户端提供统一入口,再通过网关的路由进行转发找到对应的服务就好了,网关最大的作用就是路由,路由的作用就是通过客户的url来访问到不同的微服务就好了。其实配置特别简单对于eureka我们只它既是服务端,又是客户端所以我们只需要进行服务的互相注册就可以了。配置后立即启动8762的服务。

2023-05-23 14:37:03 497

原创 SpringCloud(注册中心)

【restfu分格(入参的分格)---rest分格(请求的分格)】微服务的应用场景: 上百个服务---服务于服务之间是有依赖关系的。Eureka的服务端。

2023-05-22 14:59:29 152

原创 接口幂等性

/HandlerMethod 封装了很多属性,在访问请求方法的时候可以方便的访问到方法参数及方法上的注解。//获得方法,这个方法就是create方法。//判断这个方法上有没有添加幂等性的注解。--把token隐藏到页面中-->//这个注解有个属性默认值为true。* 根据id查询用户操作。//返回token到添加add页面。//通过UUID来设置token。//删除redis中的token。//该自定注解只能使用来方法上。// 判断是否开启幂等性处理。//把数据保存到Redis中。-- 模板引擎 -->

2023-05-19 14:38:44 598

原创 分布式锁解决方案_Zookeeper分布式锁原理

通过召zk实现分布式锁可靠性时最高的公平锁和可重入锁的原理取水秩序:(1)取水之前,先取号;(2)号排在前面的,就可以先取水;(3)先到的排在前面,那些后到的,一个一个挨着,在井边排成一队。公平锁这种排队取水模型,就是一种锁的模型。什么是可重入锁呢?可重入锁Zookeeper 的节点 Znode 有四种类型持久节点:默认的节点类型。创建节点的客户端与 zookeeper 断开连接后,该节点依旧存在。

2023-05-18 14:33:14 604

原创 分布式锁解决方案_基于Redisson实现的分布式锁实现

Redisson - 是一个高级的分布式协调Redis客服端,能帮助用户在分布式环境中轻松实现一些Java的对象,Redisson、Jedis、Lettuce是三个不同的操作 Redis 的客户端,Jedis、Lettuce 的 API 更侧重对Reids 数据库的CRUD(增删改查),而Redisson API 侧重于分布式开发。log.info(Thread.currentThread().getName() +"库存数量" + product.getCount());//根据商品id获取商品信息。

2023-05-18 14:13:30 591

原创 分布式锁解决方案_Redis实现的分布式锁原理

log.info(Thread.currentThread().getName() +"库存数量" + product.getCount());但是还是有个问题我们虽然设置了过期时间让他自动过期,但是如果设置的过期时间还没有到突然又挂机了这个时候我们的锁又称死锁了,那么我们可以使用超时释放操作。如果我们的某台服务抢到锁了但是该服务挂机了,这个时候其他服务将不能在抢到锁,形成了死锁,这个时候我们可以通过设置超级时间进行。

2023-05-17 15:58:20 325

原创 分布式锁问题_演示问题

现第二个客户端什么都没查询出来,因为第一个客户端查询数据的使用因为for update 语句持有了1001这条数据的锁,如果我不提交事物【commit命令】,客户端二是不能查询出来数据的这就是我们所说的悲观锁。顾名思义,就是比较悲观的锁,总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁, 这样别人想拿这个数据就会阻塞直到它拿到锁。* 得到的数据始终是相同的,所以我们提供reduceCount方法,每次操作是都会提供一个新的事物,来去做扣减库存操作。

2023-05-17 15:23:20 285

原创 分布式锁-01(单节点解决方案)

我们明明创建了2个库存,但是他确帮我们生成了3个订单,具体原因是我们使用synchronized是没有问题的他肯定是线程回一个一个的执行相关方法,比如我们第一个线程执行完成方法的最后一个语句后会立即释放我么的锁,这个时候第二个线程会立刻进入该方法中执行操作,这个时候第一个线程的事物提交操作可能还没有完成那么我们进行到该方法的中第二个线程查询的数据还是2,我们访问该方法的线程越多,库存数量越大,并发产生的问题就越大。分布式锁其实就是,控制分布式系统不同进程共同访问共享资源的一种锁的实现。

2023-05-15 14:57:34 240

原创 Swagger

1.Swagger Editor :基于浏览器编辑器,可以在里面编写 Open API规范。类似 Markdown具有实时预览描述文件的功能。2.Swagger UI:将 Open API 规范呈现为交互式 API 文档。用可视化UI展示描述文件。3.Swagger Codegen:将 OpenAPI 规范生成为服务器存根和客户端库。通过 Swagger Codegen 可以将描述文件生成 html 格式和 cwiki 形式的接口文档,同时也可以生成多种言语的客户端和服务端代码。

2023-05-12 14:38:09 534

原创 Redis进阶(集群,雪崩,击穿,穿透.......)

Redis进阶Redis事务_事务的概念与ACID特性Redis的事物不保证原子性数据库层面事务在数据库层面,事务是指一组操作,这些操作要么全都被成功执行,要么全都不执行。数据库事务的四大特性A:Atomic,原子性,将所有SQL作为原子工作单元执行,要么全部执行,要么全部不执行;C:Consistent,一致性,事务完成后,所有数据的状态都是一致的,即A账户只要减去了100,B账户则必定加上了100;I:Isolation,隔离性,如果有多个事务并发执行,每

2023-05-11 14:47:44 415

原创 Redis主从复制(搭建集群的一种方式)【故障转移,内存,回收】

故障转移的时候不可以操作Redis -----会出现脑裂 (出现两个表 网络震荡 解决不了)一直运行 我们在将主表停掉,然后等一会就会发现转移了。但是有个问题我把服务器停掉 关系就会解除。启动6666 and 7777。

2023-05-10 15:46:22 643

原创 Redis运行原理(持久化方式[RDB / AOF])

bgrewriteof 命令。

2023-05-10 14:02:27 33

原创 Redis缓存

缓存

2023-05-09 15:09:42 807

原创 Redis(连接池)

连接池

2023-05-08 16:11:32 904

原创 AJAX分页+(CRUD)

使ajax做一个增删改查

2023-05-05 15:21:26 567

原创 代码生成器

了解

2023-04-10 21:30:56 106

原创 GIT的使用

dev修改 和mast修改 互相不影响。

2022-09-28 12:03:00 82

原创 WEB---在删改查:

增删改查 小项目

2022-07-13 13:51:09 200 1

原创 WEB--练习(对题目进行增删改查)

WEB--练习(对题目进行增删改查)

2022-06-25 17:55:02 477

原创 WEB-小项目(增删改查)

WEB-小项目(增删改查)

2022-06-22 15:15:13 424

原创 WEB-小项目(关键词)

关键字

2022-06-20 11:40:45 140

原创 停车场车位租赁管理系统(java源码+数据库脚本)

停车场车位租赁管理系统(java源码+数据库脚本)

2022-06-17 17:02:33 1067 6

原创 二期结业考试(北京市雨量监测信息管理)

二期结业考试(北京市雨量监测信息管理)

2022-06-15 14:17:39 1093

原创 图书管理系统

需求:查询全部 模糊查询 删除用户 添加用户 数据库脚本:---- Table structure for table `book`--CREATE DATABASE JYKS04DROP TABLE IF EXISTS `book`;/*!40101 SET @saved_cs_client = @@character_set_client */;/*!50503 SET character_set_client = utf8mb4 */;CREATE ...

2022-05-27 15:11:18 223

原创 Web功能实现(1.展示全部2.模糊查询3.修改用户4.删除用户)

Web功能实现(1.展示全部2.模糊查询3.修改用户4.删除用户)

2022-05-24 23:12:00 347

原创 Web功能实现(1.展示全部2.根据品种查询,(下拉列表框选)3.Ajax验证是否可以录入4.添加功能)

Web功能实现(1.展示全部2.根据品种查询,(下拉列表框选)3.Ajax验证是否可以录入4.添加功能)

2022-05-21 10:40:52 190

原创 Web功能实现(1.实现展示全部。2.使用Ajax实现用户名是否重复。3.实现添加功能)

案例要求:1.实现展示全部。2.使用Ajax实现用户名是否重复。3.实现添加功能

2022-05-21 10:21:10 272

原创 1. Filter:过滤器 2. Listener:监听器(附带方法类源码)

1. Filter:过滤器 2. Listener:监听器(附带方法类源码)

2022-05-19 17:56:27 102

RabbitMQ.pdf-详情

入门六种工作模式,再到spring整合 springboot整合

2023-05-29

空空如也

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

TA关注的人

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