自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(683)
  • 资源 (45)
  • 问答 (13)
  • 收藏
  • 关注

原创 Spring Cloud Stream整合RocketMQ

Spring Cloud Stream是一个框架,用于构建与共享消息系统连接的高度可扩展的事件驱动微服务。该框架提供了一个灵活的编程模型,该模型基于已经建立和熟悉的Spring习惯用法和最佳实践,包括对持久pub/sub语义、消费者组和有状态分区的支持。:负责提供与外部消息传递系统集成的组件。:外部消息系统和最终用户提供的应用程序代码(生产者/消费者)之间的桥梁。Message:生产者和消费者用来与目标绑定器(以及通过外部消息系统的其他应用程序)进行通信的规范数据结构。

2024-06-12 13:36:15 212

原创 SpringBoot参数校验,消除if else

Validatedreturn Result.ok("参数校验成功");return Result.ok("参数校验成功");//分组校验有时候框架自带的校验无法满足我们业务的需求,这个时候可以根据自己的需求定制校验规则。这里我们自定义一个手机号校验的注解,仅作示例使用,因为官方已经提供了手机号的校验注解。String message() default "请填写正确的手机号";Class

2024-06-11 00:15:00 60 1

原创 搭建RocketMQ主从异步集群

为了追求更好的性能,RocketMQ的最佳实践方式都是在集群模式下完成的。

2024-06-10 13:54:14 446

原创 初探RocketMQ

随着使⽤中队列和虚拟主题的增加,阿⾥巴巴团队使⽤的ActiveMQ IO 模块达到了瓶颈。为了尽⼒通过节流、断路器或降级来解决这个问题,但效果不佳。所以开始关注当时流⾏的消息传递解决⽅案Kafka。不幸的是, Kafk⽆法满⾜要求,尤其是在低延迟和⾼可靠性⽅⾯。在这种情况下,决定发明⼀种新的消息传递引擎来处理更⼴泛的⽤例,从传统的发布/订阅场景到⼤容量实时零丢失交易系统。⽬前RocketMQ已经开源给Apache基⾦会。如今,已有 100 多家公司在其业务中使⽤开源版本的 RocketMQ。消息产品。

2024-06-10 13:51:43 341

原创 ElasticSearch聚合分页

ES支持同时返回查询结果和聚合结果,前面的博客在介绍聚合查询时,查询结果和聚合结果各自封装在不同的子句中。但有时我们希望聚合的结果按照每组选出前N个文档的方式进行呈现,最常见的一个场景就是电商搜索,如搜索苹果手机6S,搜索结果应该展示手机6S型号中的一款手机即可,而不论该型号手机的颜色有多少种。另外,当聚合结果和查询结果封装在一起时,还需要考虑对结果分页的问题,此时之前的博客介绍的聚合查询就不能解决这些问题了。ES提供的Top hits聚合和Collapse。

2024-06-10 13:38:08 207

原创 ElasticSearch聚合排序

根据之前的博客可知,ES对于聚合结果的默认排序规则有时并非是我们希望的。可以使用ES提供的sort子句进行自定义排序,有多种排序方式可供选择:按照聚合后的文档计数的大小进行排序按照聚合后的某个指标进行排序按照每个组的名称进行排序。

2024-06-10 13:37:47 201

原创 ElasticSearch聚合方式

ES支持灵活的聚合方式,它不仅支持聚合和查询相结合,而且还可以使聚合的过滤条件不影响搜索条件,并且还支持在聚合后的结果中进行过滤筛选。

2024-06-10 13:37:34 31

原创 ElasticSearch的桶聚合

在前面几篇博客中介绍的聚合指标是指符合条件的文档字段的聚合,有时还需要根据某些维度进行聚合。例如在搜索酒店时,按照城市、是否满房、标签和创建时间等维度统计酒店的平均价格。这些字段统称为“桶”,在同一维度内有一个或者多个桶。例如城市桶,有“北京”、“天津”等,是否满房桶,有“满房”和“非满房”。

2024-06-10 13:37:19 288 1

原创 ElasticSearch中的聚合

聚合的需求在很多应用程序钟都有所体现,例如在京东搜索“咸鸭蛋”,然后点击搜索界面钟的筛选按钮,在弹出的界面钟可以对当前的搜索结果进行进一步的过滤。在搜索结果的aggregations子句中存储着聚合结果,其中my_agg是聚合的名称,其对应的value值就是具体聚合结果,即酒店的平均价格。在索引中,文档002的price字段为空,因此被填充为100,文档001、003、004和005的price字段分别为556、200、500和800,因此符合聚合的值应该是。

2024-06-10 13:37:00 15

原创 ElasticSearch中的Scirpt Score查询

Painless语言是一种专门用于ES中的脚本语言,它使用了类似于Groovy的语法。ES使用了沙箱技术运行Painless,且在Painless中没有任何网络连接的功能,因此它在安全性方面是有保障的。Painless是被编译成JVM字节码后运行的,从语法上看是Java的子集。1.变量变量在使用之前必须先进性声明,其声明方式和Java保持一致。如果变量在声明时没有指定值,则使用变量类型对应的默认值。2.数据类型。

2024-06-10 13:36:38 230

原创 ElasticSearch中的二次打分

工作的阶段是在原始查询打分之后,它支持对打分后Top-N的文档集合执行第二次查询和打分。通过设置参数可以控制在每个分片上进行二次打分查询的文档数量,在默认情况下的值为10。在默认情况下,文档的最终得分等于原查询和rescore查询的分数之和。当然,还可以使用参数对这两部分的权重进行控制。

2024-06-10 13:32:52 176

原创 什么是Dubbo?

Apache Dubbo是一款高性能、轻量级的开源微服务开发框架,它提供了RPC通信与微服务治理两大关键能力。这意味着,使用Dubbo开发的微服务,将具备相互之间的远程发现与通信能力,同时利用Dubbo提供的丰富服务治理能力,可以实现诸如服务发现、负载均衡、流量调度等服务治理需求。同时Dubbo是高度可扩展的,用户几乎可以在任意功能点去定制自己的实现,以改变框架的默认行为来满足自己的业务需求。

2024-06-10 13:32:01 795

原创 搭建Zookeeper主从运行环境

Zookeeper准确来说没有集群模式,只有主从复制模式,因为每台ZooKeeper服务器中存储的数据都是一样的,master主服务器在ZooKeeper中称为Leader领导者,slave从服务器在ZooKeeper中称为Follower跟随者,Leader服务器会将数据同步复制到Follower服务器中,Leader和Follower中的数据是一样的,所以并不是集群模式,而是主从复制模式。

2024-06-10 13:31:11 888

原创 搭建Zookeeper单机运行环境

这些步骤成功搭建了一个单机环境下的Zookeeper服务,并实现对节点进行CRUD操作。的配置文件,该配置文件是zookeeper的核心配置文件,与zookeeper有关的几乎所有配置都要在此文件中进行定义。,它的主要作用是在某个路径中存储内存中的快照数据,将内存中的数据持久化到该路径中,以便在宕机时可以将数据进行还原。在大部分情况下,使用默认配置即可,但这里需要配置的选项是。在终端中使用如下命令连接zookeeper服务。是Zookeeper的Java Client。使用如下命令启动zookeeper。

2024-06-10 13:30:40 992

原创 SpringBoot整合多数据源

我们在调用任何持久层的框架,都是基于JDBC进行操作的,只要集成了Spring框架就一定会注入配置的DataSource获取连接。既然是我们配置的,我们可以实现一个自定义的DataSource,然后动态提供数据源。说干就干那我们实现DataSource这个接口,实现方法即可,会返回一个Connection对象。我们在这个方法中根据业务需求动态提供不同数据源的Connection对象即可。实现逻辑如下:我们可以通过一个静态的标识去判断,比如如果是Write,那就返回,如果是Read,就返回。

2024-01-24 15:58:37 415

原创 JUC高并发容器-CopyOnWriteArrayList

JUC高并发容器是基于非阻塞算法(或者无锁编程算法)实现的容器类,无锁编程算法主要通过组合实现,通过CAS保障操作的原子性,通过volatile保障变量内存的可见性。开销较小:不需要在内核态和用户态之间切换进程。读写不互斥:只有写操作需要使用基于CAS机制的乐观锁,读读操作之间可以不用互斥。1.ListJUC包中的高并发List主要有,对应的基础容器为ArrayList。相当于线程安全的ArrayList,它实现了List接口。在读多写少的场景中,其性能远远高于ArrayList的同步包装容器。

2023-10-22 10:55:39 320

原创 CompletableFuture异步回调

在进行传统的RPC(远程调用)时,同步调用RPC是一段耗时的过程。该方法是对runAfterBoth()方法和thenCombine()方法的特点进行了折中,调用thenAcceptBoth()方法,第三个任务可以接收其合并过来的第一个任务、第二个任务的处理结果,但是第三个任务(合并任务)却不能返回结果。从方法的声明可以看出,thenRun()方法同thenApply()方法类似,不同的是前一个任务处理完成后,thenRun()并不会把计算的结果传给后一个任务,而且后一个任务也没有结果输出。

2023-10-04 20:44:17 1207

原创 浅谈泛型擦除

getFirst擦除类型后的返回类型是Object。在编码阶段使用泛型时加上的类型参数,会被编译器在编译阶段去掉,这个过程叫做泛型擦除。编写一个泛型方法调用时,如果擦出了返回类型,编译器会插入强制类型转换。注意,类型参数T已经被擦出了,只留下了限定类型Comparable。(erased),并替换为其限定类型(或者,对于无限定的变量则替换为。这个原始类型的名字就是去掉类型参数后的泛型类型名。无论何时定义一个泛型类型,都会自动提供一个相应的。不过擦除类型后,它们都会编程原始的Pair类型。

2023-10-04 00:20:09 411

原创 设计模式-观察者模式

观察者(Observer)模式指在被观察者的状态发生变化时,系统基于事件驱动理论将其状态通知到订阅模式的观察者对象中,以完成状态的修改和事件的传播。这种模式有时又叫做发布-订阅模式或者模型-视图模式。观察者模式是一种对象行为型模式,观察者和被观察者之间的关系属于抽象耦合关系,主要优点是在观察者与被观察者之间建立了一套事件出发机制,以降低二者之间的耦合度。抽象主题(Subject):持有订阅了该主题的观察者对象的集合,同时提供了增加、删除观察者对象的方法和主题状态发生变化后的通知方法。

2023-06-25 00:03:41 1204

原创 设计模式-适配器模式

我们常常在开发过程中遇到各个系统之间的对接问题,然而每个系统的数据模式或多或少存在区别,因此可能存在改变现有对象模型的情况,这将影响到系统的稳定。如果想在不改变原有代码结构(类的结构)的情况下完成友好对接,就需要用到适配器模式(Adapter Pattern)。适配器模式通过定一一个适配器类作为两个不兼容的接口之间的桥梁,将一个类的接口转换成用户期望的另一个接口,使得两个或多个原本不兼容的接口可以基于适配器类一起工作。

2023-06-24 23:57:08 1193

原创 设计模式-单例模式

单例模式是保证系统实例唯一性的重要手段。单例模式首先通过将类的实例化方法私有化来防止程序通过其他方式创建该类的实例,然后通过提供一个全局唯一获取该类实例的方法帮助用户获取类的实例,用户只需要也只能通过调用该方法获取类的实例。单例模式的设计保证了一个类在整个系统中同一时刻只有一个实例存在,主要被用于一个全局类的对象在多个地方被使用并且对象的状态是全局变化的场景下。

2023-06-24 22:26:01 1443

原创 设计模式-抽象工厂模式

抽象工厂模式(Abstract Factory Pattern)在工厂模式尚添加了一个创建不同工厂的抽象接口(抽象类或接口实现),该接口可叫做超级工厂。在使用过程中,我们首先通过抽象接口创建不同的工厂对象,然后根据不同的工厂对象创建不同的对象。我们可以将工厂模式理解为针对一个产品维度进行分类,比如上述工厂模式下的苹果手机和华为手机;而抽象工厂模式针对的是多个产品维度的分类,比如苹果公司既制造苹果手机又制造苹果笔记本电脑,同样,华为公司既制造华为手机也制造华为笔记本电脑。

2023-06-24 19:20:12 1340

原创 设计模式-工厂模式

工厂模式(Factory Pattern)是最常见的设计模式,该模式属于创建型模式,它提供了一种简单、快速、高效且安全创建对象的方式。工厂模式在接口中定义了创建对象的方法,而将创建对象的具体过程在子类中实现,用户只需通过接口创建需要的对象即可,不用关注对象的具体创建过程。同时,不同的子类可可根据需求灵活实现创建对象的不同方法。通俗地讲,工厂模式的本质就是用工厂方法代替new操作创建一个实例化对象的方式,以提供一种可方便地创建有同种类型接口的产品的复杂对象的方式。

2023-06-24 19:18:09 1571 1

原创 RabbitMQ应用场景和集群搭建复习

虽然并行已经提高的处理时间,但是,前面说过,邮件和短信对我正常的使用网站没有任何影响,客户端没有必要等着其发送完成才显示注册成功,应该是写入数据库后就返回.由此可以看出,引入消息队列后,用户的响应时间就等于写入数据库的时间+写入消息队列的时间(可以忽略不计),引入消息队列后处理后,响应时间是串行的3倍,是并行的2倍。1.用户的请求,服务器收到之后,首先写入消息队列,加入消息队列长度超过最大值,则直接抛弃用户请求或跳转到错误页面.用户下单后,订单系统完成持久化处理,将消息写入消息队列,返回用户订单下单成功。

2023-06-23 10:56:58 1255

原创 RabbitMQ基础与实操复习

MQ(Message Quene) : 翻译为消息队列,通过典型的生产者和消费者模型,生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,轻松的实现系统间解耦。别名为消息中间件通过利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。

2023-06-23 10:36:38 1445

原创 迷宫-BFS

由于传送门的存在, 从 (1,1) 出发到终点 (2,2) 只需要一步;, 那么小明既可以花费1的步数向上下左右四个方向之一走一格 (不能越过边界), 也可以花费1的步数通过传送门走到格子去。迷宫中除了可以向上下左右四个方向移动一格以外, 还有m个双向传送门可以使用, 传送门可以连接两个任意格子。n个格子中均匀随机的 (当然运气好可以直接随机到终点), 他想知道从初始格子走到终点的最短步数的期望值是多少。以终点为起点跑遍整个地图,每次到一个新的位置时,此时到达的步数就是从终点到该点的最短步数(

2023-06-01 21:39:56 1158

原创 出差(Bellman-Ford算法)

从题意可知,这道题目考察的是最短路径的算法,碰到这种问题最容易想到的就是Floyd算法,三个for循环就写出来了,但是由于Floyd的时间复杂度是。由于存在隔离时间,所以我们每条边的权值需要有所调整,假设城市A到城市B有一条权值为w的双向边,那么我们从城市A到城市B的权值需要修改为。由于上级要求, 小明希望能够尽快赶到城市 N, 因此他求助于你, 希望你 能帮他规划一条路线, 能够在最短时间内到达城市。算法是对边进行枚举,所以我们只需要在初始化的时候设置好边的权值即可,另外不需要考虑起点和终点的隔离时间。

2023-05-31 22:55:25 1215

原创 第十届蓝桥杯研究生组国赛-大胖子走迷宫(BFS问题)

小明在时刻 0 出发,每单位时间可以向当前位置的上、下、左、右移动单 位 1 的距离,也可以停留在原地不动。小明走迷宫走得很辛苦,如果他在迷宫里面待的时间很长,则由于消耗了很多脂肪,他会在时刻。n个方阵组成的方阵,正常人每次占用方阵中1×1的区域,而小明要占用 5×5的区域。走迷宫是计划中的重要环节。:先将初始点放入队列,然后只要队列非空我们就让队头节点出队,判断是否已经到达了终点,如果是,输出花费的时间。小明是个大胖子,或者说是个大大胖子,如果说正常人占用1×1 的面积,小明要占用 5×5 的面积。

2023-05-08 21:43:55 1565 2

原创 路径之谜(DFS)-2016年蓝桥杯国赛

骑士从左上角起点出发,没走一步,往左边和上边对应位置射一箭,题目在方格的左边和上边给出了骑士从起点到终点射箭的数量,现在让我们求骑士行走的路线。但不必走完所有的方格。如果走到终点且箭靶上的箭还没有被拔完,那我们就要济宁回溯操作(标记当前点未访问,左边箭靶数量+1,上边箭靶数量+1)。数组中记录的是经过的每个方格的编号,最后将这些编号输出即为骑士从起点到终点走过的路径。如果该点是终点,且箭靶上箭的数量为0,则说明走过的路线就是骑士经过的路线,算法结束。个整数,空格分开,表示北边的箭靶上的数字(自西向东)

2023-05-05 21:01:11 1458

原创 十一届蓝桥杯研究生组国赛-循环小数(数论)

例如 0.3333⋯0.3333⋯ 等于 1331 ,0.1666⋯0.1666⋯ 等于 1661。其实纯循环小数和混合循环小数最后的推导结果是可以合并的,这里为了区分就不合并了,看起来思路还清晰一点。,循环体为142857,该循环体有6位,有。再计算出142857与999999的最大公约数位142857,则对分数。输出两个整数,用一个空格分隔,分别表示答案的分子和分母。此时p=1,q=6,循环体位142857。是一个小于 11 的循环小数,请计算与。相等的最简真分数是多少。此时,p=3,q=7。

2023-05-05 10:12:03 1076

原创 十三届蓝桥杯研究生组国赛-最大公约数(线段树+二分)

由于要求的是最少次数,所以在没有1的情况下,我们要使用最少的操作次数获得1,其实就是我们在数组中找到最短的子数组,使得它们的gcd结果为1,涉及到了查询区间gcd整个操作。我们首先应该考虑数组中是否存在1,如果数组中存在1,那直接让整个1和其他数字都进行gcd,假设1的个数为。因为如果存在一个数组的gcd为1,那么整个数组无论再加上任何正整数,gcd也永远是1,因为。,如果整个数组的gcd都不为1,那么任何子数组的gcd也不可能为1,此时无解。,对于数组中的每个数我们都可以固定为区间的左端点。

2023-04-29 17:27:15 1362 1

原创 线段树入门

基于arr数组构建线段树,我们根节点存储的是区间[0-5]的和,再往下面分叉,左边表示[0-2]的和,右边表示[3-5]的和,以此类推,最后所有的叶子节点就是数组中的所有数字。线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。我们判断要修改的点是位于线段树的左子树还是右子树,若是左子树,递归左子树,修改对应节点的值,若是右子树那就递归右子树,修改对应节点的值。:我们使用一个数组保存,先标记上各个节点的下标,根节点下标为0,根节点的左孩子下表为。

2023-04-29 00:06:24 1461

原创 十三届蓝桥杯研究生组国赛-斐波那契数组

这里我们还需要确定斐波那契梳理的初始值,因为题目中并没有说初始值就是1,这个我们可以通过遍历的方式求解,我们将初始值从1取到1000000,然后根据这个初始值生成斐波那契数列,, 你可以执行任意次修改, 每次修改将数组中的某 个位置的元素修改为一个大于 0 的整数。将原数组修改为 (1,1,2,3,5)(1,1,2,3,5), 最少修改三个元素变成了一个斐波那契数组。然后我们比较控制台输入的数组和我们生成的正确斐波那契数组匹配的个数,取匹配个数最大的那一个即可。会变成一个斐波那契数组。

2023-04-28 16:10:56 2156

原创 布隆过滤器

布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。主要用于判断一个元素是否在一个集合中,0代表不存在某个数据,1代表存在某个数据。总结:一个元素一定不存在 或者 可能存在!存在一定的误判率{通过代码调节}

2023-04-19 23:31:37 1641

原创 CompletableFuture异步编排

Future是Java 5添加的类,用来描述一个异步计算的结果。你可以使用isDone方法检查计算是否完成,或者使用get阻塞住调用线程,直到计算完成返回结果,你也可以使用cancel方法停止任务的执行。在Java 8中, 新增加了一个包含50个方法左右的类:,提供了非常强大的Future的扩展功能,可以帮助我们简化异步编程的复杂性,提供了函数式编程的能力,可以通过回调的方式处理计算结果,并且提供了转换和组合的方法。类实现了Future接口,所以你还是可以像以前一样通过get。

2023-04-19 22:56:15 1359 1

原创 分布式锁+AOP实现缓存

*** 元注解:简单理解就是修饰注解的注解* @Target:用于描述注解的使用范围,简单理解就是当前注解可以用在什么地方* @Retention:表示注解的生命周期* SOURCE:只存在类文件中,在class字节码不存在* CLASS:存在到字节码文件中* RUNTIME:运行时* @Inherited:表示被GmallCache修饰的类的子类会不会继承GmallCache* @Documented:表明这个注解应该被javadoc工具记录,因此可悲javadoc类的工具文档化。

2023-04-19 22:47:45 1716

原创 分布式锁-Redisson

如果负责储存这个分布式锁的Redisson节点宕机以后,而且这个锁正好处于锁住的状态时,这个锁会出现锁死的状态。为了避免这种情况的发生,Redisson内部提供了一个监控锁的看门狗,它的作用是在Redisson实例被关闭前,不断的延长锁的有效期。随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的Java API并不能提供分布式锁的能力。超过这个时间后锁便自动解开了。

2023-04-19 00:12:41 1927

原创 Bellman-Ford算法--解决负权边问题

前阵子备考蓝桥杯的时候碰到了这个算法,感觉还挺有意思的,实现起来也非常简单。贝尔曼-福特算法(Bellman-Ford)是由理查德·贝尔曼(Richard Bellman) 和 莱斯特·福特 创立的,求解单源最短路径问题的一种算法。有时候这种算法也被称为 Moore-Bellman-Ford 算法,因为 Edward F. Moore 也为这个算法的发展做出了贡献。它的原理是对图进行V-1次松弛操作,得到所有可能的最短路径。其优于迪科斯彻算法。

2023-04-14 23:00:27 1514 1

原创 RSA解密-第十届Java研究生组E题

互质(互质的意思是最大公约数是1),这里我用暴力遍历出p和q,由于是填空题,n的数字很大,这个遍历求p和q花费了几秒钟的时间。=212353,同时你截获了别人发送的密文 C=20190324,请问,原文是多少?),Java中的BigInteger类型提供了求乘法逆元的API,我们直接调用就行。然后根据p和q的值求e,这个直接调用惩罚逆元的API即可。现在C、e、n都是已知的,我们直接利用公式。求解出原文,但是想求出e就得先求出p和q。组成了私钥,n,d 组成了公钥。=3 时,n=55,e=27。

2023-04-01 21:23:13 1034

原创 蓝桥杯-修改数组(并查集)

然后执行5和(5+1=6)的合并就行,到这里已经结束了,就不再画出5和6的合并结果了。没输入一个数字,我们就去查找它的根节点,把他根节点的值当作这个位置的最终结果。如果新的A_i仍在之前出现过,小明会持续给 加。也经过上述修改之后,显然A数组中就没有重复的整数了。的时候,直接把2的根节点值3当作本次的最终结果。,然后执行3和(3+1=4)的合并,结果如下右图。为例,初始的时候,我们让每个节点都指向自己。这样做的目的是,在下一次还输入。,数组中有可能有重复出现的整数。数组保存每个节点的父节点,使用。

2023-03-31 21:55:16 943

ebusiness.zip

技术:springboot+Thymeleaf+MyBatis 1.后台管理子系统 后台管理子系统要求管理员登录成功后,才能对商品进行管理,包括添加商品、查询商品、修改商品以及删除商品。除商品管理外,管理员还需要对商品类型、注册用户以及用户的订单等进行管理。 2.电子商务子系统 1)非注册用户 非注册用户或未登录用户具有的功能如下:浏览首页、查看商品详情以及搜索商品的功能。 2)用户 成功登录的用户除具有未登录用户具有的功能外,还具有购买商品、查看购物车、收藏商品、查看订单、查看收藏以及查看用户个人信息的功能。

2021-04-28

pdman2.2.0.zip

PDMan是PowerDesigner的一个优秀的替代方案.特点如下: 免费使用 功能简洁,去除晦涩难懂的设置,化繁为简,实用为上,上手非常容易。 Windows,Mac,Linux三个平台均可以使用(敲黑板,重点)。 自带参考案例,学习容易。新建一个项目,完全不需要做任何配置。 对开发极其友好,可生成各种数据库以及编程语言的模型类。 目前系统默认实现了MySQL,Oracle,Java的代码自动生成,并且带注释。其他类型的数据库或语言,只需要添加相应的“数据库”并设置好相应的doT模板就可以了。 一键自动生成数据表结构文档,方便客户交付。 数据库 版本管理 以及 数据库同步 功能,解决数据库版本管理的一大痛点。 生成数据库脚本以及提供导出功能。

2021-04-18

js实现MD5加密算法.zip

前端md5加密算法,附带调用方式

2021-04-14

PotPlayerSetup64 (1).exe

potplayer视频播放器,可播放avi格式视频

2021-04-10

Postman-win64-8.1.0-Setup.exe

在我们平时开发中,特别是需要与接口打交道时,无论是写接口还是用接口,拿到接口后肯定都得提前测试一下,这样的话就非常需要有一个比较给力的Http请求模拟工具,现在流行的这种工具也挺多的,像火狐浏览器插件-RESTClient,Chrome浏览器插件-Postman等等。这里主要介绍一下Postman。

2021-04-08

otp_win64_23.2.6.exe

Erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机的解释性语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本式解释器。在编程范型上,Erlang属于多重范型编程语言,涵盖函数式、并发式及分布式。顺序执行的Erlang是一个及早求值,单次赋值和动态类型的函数式编程语言。

2021-04-08

rabbitmq-server-3.8.9.zip

RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。

2021-04-08

ActiveMQ.zip

Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。

2021-04-08

summernote.zip

Summernote 是一个简单灵活的所见即所得的 HTML 在线编辑器,基于 jQuery 和 Bootstrap 构建,支持快捷键操作,提供大量可定制的选项。

2021-04-08

mongodb-compass-1.26.0-win32-x64.zip

MongoDB的图形管理界面工具MongoDB Compass

2021-04-01

RedisClient.zip

一款用Java开发的Redis客户端Redis Client

2021-04-01

rest-client.zip

Wisdom RESTClient 一款自动化测试REST API的工具,它可以自动化测试RESTful API并生成精美的测试报告,同时基于测试过的历史API,可以生成精美的RESTful API文档。 使用前请安装jdk

2021-03-31

echarts.zip

ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,满足各种需求。 ECharts 遵循 Apache-2.0 开源协议,免费商用。 ECharts 兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等)及兼容多种设备,可随时随地任性展示。

2021-03-31

zTree_v3.zip

zTree 是一个依靠 jQuery 实现的多功能 “树插件”。优异的性能、灵活的配置、多种功能的组合是 zTree 最大优点。

2021-03-21

百度文件上传插件.zip

百度文件上传插件

2021-03-17

printThis.zip

printThis前端打印插件

2021-03-16

bootstrap-table.zip

bootstrap-table表格插件

2021-03-16

bootstrap-table-examples.zip

bootstrap-table插件的示例代码

2021-03-16

bootstrap-fileinput文件上传插件.zip

bootstrap-fileinput是一款非常优秀的HTML5文件上传插件,支持文件预览、多选等一系列特性。一款非常优秀的HTML5文件上传插件,支持bootstrap 3.x 和4.x版本,具有非常多的特性:多文件选择。这个插件能最简单的帮你完成文件上传功能,且使用bootstrap样式。还支持多种文件的预览,images, text, html, video, audio, flash。另外还支持ajax方式上传文件,可以看到上传进度。支持拖拽的方式添加和删除文件。

2021-03-16

bootstrap-suggest-plugin.zip

这是一个基于 bootstrap 按钮式下拉菜单组件的搜索建议插件,必须使用于按钮式下拉菜单组件上

2021-03-16

自编码器实战(基于FashionMNIST数据集)

自编码器算法非常简单,实现方便,训练也较为稳定,相对于PCA算法,神经网络的强大表达能力可以学习输入的高层抽象的隐藏特征向量z,同时也能够基于z重建出输入。这里基于FashionMNIST数据集进行图片重建实战。 说明文档:https://blog.csdn.net/qq_43753724/article/details/125862444?spm=1001.2014.3001.5501

2022-07-18

数码产品类电商小程序项目

微信小程序案例,仅供学习使用。页面如下: [1]数码商城首页:数码商城包含顶部的轮播图、中间商品列表部分和底部tabBar菜单。 [2]商品分类页:当用户点击左边的分类区域后,在右侧按照分类显示对应的商品。 [3]商品详情页:通过商城首页和分类页的点击事件跳转而来,根据商城首页和分类页传递过来的{{index}}字段来调用正确的商品信息,用户在此界面可将商品添加进购物车。 [4]购物车界面:商品数量的修改、删除某件商品、清空购物车等操作。 [5]支付页:显示购买的商品数量、设置配送时间、备注以及付款总额。 [6]个人主页:查看个人信息。

2022-03-31

cifar10数据集.zip

cifar10数据集

2021-11-14

阿里云服务端上传SDK下载

阿里云服务端上传SDK

2021-11-08

wiznote-desktop-0.1.38-win-x64.exe

为知笔记windows安装包

2021-10-25

Mycat分库分表+springcloud微服务小案例源码.zip

模拟电商项目中的商品管理、订单管理、基础信息管理、日志管理模块,对整个系统中的数据表进行分片操作,将根据不同的业务需求,采用不同的分片方式 。 技术选型: - SpringBoot - SpringCloud - SpringMVC - Mybatis - SpringDataRedis - MySQL - Redis - Lombok

2021-10-20

Mycat-server-1.6.7.3-release-20190927161129-linux.tar.gz

mycat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。

2021-10-04

jmeter压力测试工具.zip

apache-jmeter-5.2.tgz

2021-09-08

sentinel dashboard.zip

sentinel-dashboard-1.7.2.jar Sentinel Dashboard一个简单的仪表板应用程序,您可以在该应用程序上实时监控客户端并配置规则。

2021-09-08

libiconv.zip

iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件。 它的作用是在多种国际编码格式之间进行文本内码的转换。

2021-09-02

texstudio-3.1.2-win-qt5.zip

TeXstudio 是一个用于创建 LaTeX 文档的集成书写环境。我们的目标是让编写 LaTeX 尽可能简单和舒适。因此,TeXstudio 具有许多功能,例如语法突出显示、集成查看器、参考检查和各种助手。

2021-08-21

consul_1.10.1_windows(exe)

Consul是HashiCorp公司退出的开源工具,用于实现分布式系统的服务发现与配置。

2021-08-19

前后端分离博客项目.zip

一个前后端分离的博客小项目,为了适合后续的拓展和微服务化体系等,选择SpringBoot作为后端开发框架。然后数据层,我们常用的是Mybatis,易上手,方便维护。但是单表操作比较困难,特别是添加字段或减少字段的时候,比较繁琐,所以这里我推荐使用Mybatis Plus(mp.baomidou.com/),为简化开发而生,只… CRUD 操作,从而节省大量时间。 作为一个项目骨架,权限也是我们不能忽略的,Shiro配置简单,使用也简单,所以使用Shiro作为我们的的权限。 然后因为前后端分离,所以我们使用jwt作为我们用户身份凭证。 技术栈: SpringBoot mybatis plus shiro lombok hibernate validatior jwt vue element-ui axios mavon-editor markdown-it github-markdown-css

2021-08-11

前后端分离小项目(员工管理).zip

1、技术选型: 前端: vue + axios 后端: springboot + mybatis + mysql + tomcat + Redis 2、需求分析: 用户模块 a.用户登录 b.用户注册 c.验证码实现 d.欢迎xx用户展示 e.安全退出 f.员工列表展示 员工模块 g.员工添加 h.员工删除 i.员工修改 j.员工列表加入redis缓存实现 只能当作前后端分离的基础入门项目,因为这里并没有使用组件,只是演示下前后端分离项目的开发过程。

2021-08-04

springboot_thymeleaf_shiro.zip

shiro整合springboot之thymeleaf权限控制

2021-07-05

springboot_jsp_shiro.zip

shiro整合springboot项目实战

2021-07-05

谷歌浏览器(google).rar

Google Chrome是一款由Google公司开发的网页浏览器,该浏览器基于其他开源软件撰写,包括WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

2021-05-23

BANDIZIP-SETUP-STD-X64.EXE

Bandizip 是一款压缩软件,它支持WinZip、7-Zip 和 WinRAR 以及其它压缩格式。它拥有非常快速的压缩和解压缩的算法,适用于多核心压缩、快速拖放、高速压缩等功能。软件授权: 免费软件(家庭和办公室 100% 免费)。

2021-05-23

OfficeFileAPI.chm

Office文件API是一个非可视化的跨平台的。用于文档处理的NET库。您可以使用富文本文档、电子表格或报告,绘制条形码,创建新的或编辑现有的PDF文档,转换不同的单元并直接从代码压缩数据,而不涉及任何UI组件,如富编辑控件或电子表格。该程序集可以用于针对各种平台的应用程序(ASP。净值,asp。网络MVC,WinForms和WPF)。

2021-05-17

傲梅分区助手(磁盘分区、系统迁移等等).zip

分区助手是一款免费、专业级的无损分区工具。不仅提供简单、易用的磁盘分区管理操作。它也能迁移系统到固态硬盘、实现硬盘克隆,是一个不可多得的硬盘分区工具软件。

2021-05-01

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

TA关注的人

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