自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用 OpenFeign 实现服务间通信

利用Nacos实现了服务的治理,利用RestTemplate实现了服务的远程调用。但是远程调用的代码太复杂:这种调用方式,与原本的本地方法调用差异太大,编程时的体验也不统一,一会儿远程调用,一会儿本地调用。因此,必须想办法改变远程调用的开发模式,让远程调用像本地方法调用一样简单。而这就要用到OpenFeign组件了。

2024-04-27 17:53:10 361

原创 Nacos服务注册和发现

在大型微服务项目中,服务提供者的数量会非常多,为了管理这些服务就引入了注册中心的概念。注册中心、服务提供者、服务消费者三者间关系如下:当服务提供者的实例宕机或者启动新实例时,调用者如何得知呢?

2024-04-27 17:38:43 854

原创 Kafka Streams实时流式计算

Kafka Stream是Apache Kafka从0.10版本引入的一个新Feature。它是提供了对存储于Kafka内的数据进行流式处理和分析的功能。Kafka Stream提供了一个非常简单而轻量的Library,它可以非常方便地嵌入任意Java应用中,也可以任意方式打包和部署除了Kafka外,无任何外部依赖充分利用Kafka分区机制实现水平扩展和顺序性保证通过可容错的state store实现高效的状态操作(如windowed join和aggregation)

2024-04-23 20:59:34 1047

原创 定时任务框架xxl-job使用配置笔记

xxl-job 是一个分布式任务调度平台,主要用于解决企业级分布式任务调度问题。它提供了分布式任务调度、任务执行器、任务监控等功能,可以帮助企业实现任务调度的自动化和可靠性。总的来说,xxl-job 是一个功能强大、易于使用的分布式任务调度平台,可以帮助企业实现任务调度的自动化和可靠性,提高任务执行的效率和可管理性。源码地址:https://gitee.com/xuxueli0323/xxl-job文档地址:https://www.xuxueli.com/xxl-job/

2024-04-21 17:41:15 1281

原创 MongoDB安装及集成

MongoDB是一个开源的、面向文档的 NoSQL 数据库,它采用了 JSON 风格的文档来存储数据,而不是传统的表格形式。MongoDB在数据存储方面具有灵活性和可扩展性,使得它成为了当今流行的数据库之一。:MongoDB 使用类似 JSON 的 BSON 格式来存储数据,每个文档可以包含不同的字段,这种灵活性使得数据模型更易于设计和修改。:MongoDB支持水平扩展,可以通过添加更多的节点来扩展存储容量和处理能力,从而满足不断增长的数据需求。

2024-04-19 21:11:21 642

原创 ElasticSearch搭建配置

因为在创建elasticsearch容器的时候,映射了目录,所以可以在宿主机上进行配置ik中文分词器。在去选择ik分词器的时候,需要与elasticsearch的版本好对应上。上传到服务器上,放到对应目录(plugins)解压。

2024-04-18 22:29:44 361

原创 kafka安装配置及使用

Kafka 是一个分布式流处理平台和消息队列系统,最初由 LinkedIn 公司开发并开源。它设计用于htt处理大规模的实时数据流,并具有高可扩展性、高吞吐量和持久性等特性。以下是 Kafka 的一些主要特点和用途:分布式架构:Kafka 是一个分布式系统,可以运行在多个服务器上组成的集群中。这个集群可以被扩展到数百台服务器上,以处理大量的数据和客户端。发布-订阅模型:Kafka 使用发布-订阅模型来处理消息。消息生产者将消息发布到一个或多个主题(Topics)中,而消息消费者则通过订阅这些主题来接收消息。

2024-04-17 22:53:38 945

原创 利用Tess4J实现图片文字识别

光学字符识别(OCR)技术允许计算机通过扫描仪、摄像头等设备来识别并转换印刷或手写文本的图像数据为可编辑的文本格式。Tess4J是一个优秀的Java库,提供了与Tesseract OCR引擎的集成,方便进行图片文字识别。

2024-04-13 22:49:03 427

原创 对象存储服务MinIO安装使用

MinIO基于Apache License v2.0开源协议的对象存储服务,可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用Golang实现,服务端可以工作在Windows,Linux, OS X和FreeBSD上。配置简单,基本是复制可执行程序,单行命令可以运行起来。MinIO兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。

2024-04-07 19:37:37 555

原创 Freemarker环境搭建&&快速入门

FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。

2024-04-06 23:40:20 944

原创 Nginx配置使用笔记

官网下载压缩包https://nginx.org/解压完成后当前目录cmd输入nginx指令启动访问http://localhost:80确认启动成功。

2024-04-04 17:19:41 575

原创 Knife4j配置使用笔记

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名kni4j是希望它能像一把匕首一样小巧,轻量,并且功能强悍!gitee地址:https://gitee.com/xiaoym/knife4j官方文档:https://doc.xiaominfo.com/效果演示:http://knife4j.xiaominfo.com/doc.html核心功能该UI增强包主要包括两大核心功能:文档说明 和 在线调试。

2024-04-02 17:40:07 393

原创 Swagger使用配置笔记

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务

2024-04-02 17:21:42 474

原创 RabbitMQ安装及使用笔记

RabbitMQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP),用于在分布式系统中进行消息传递。

2024-03-28 19:54:17 626

原创 SpringCloud中网关实现笔记

SpringCloudGateway:基于Spring的WebFlux技术,完全支持响应式编程,吞吐能力更强Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,用于构建基于 Spring 框架的 API 网关服务。它基于 Spring 5,采用了异步非阻塞方式,极大地提高了性能。

2024-03-24 17:50:23 636

原创 微服务架构中的远程调用

微服务架构通常将系统拆分成多个独立的服务单元,每个服务单元都专注于实现特定的业务功能。当一个服务需要使用另一个服务提供的功能时,就可以通过远程调用来实现。

2024-03-17 01:57:39 594

原创 Docker Compose基本配置及使用笔记

Docker Compose 是一个用于定义和运行多个 Docker 容器应用程序的工具。它使用 YAML 文件来配置应用程序的服务,并通过简单的命令集管理这些服务的生命周期。

2024-03-15 17:15:17 414

原创 Docker基本配置及使用

代码如下:首先如果系统中已经存在旧的Docker,则先卸载。

2024-03-14 19:23:21 423

原创 MybatisPlus安装即使用快速上手

代码如下:Mapper要继承 BaseMapper,需要写上对应pojo的泛型,不再需要编写查询语句和方法@Mapper简化CRUD操作:提供了通用的Mapper接口,通过继承该接口,可以实现基础的增删改查操作,无需手动编写SQL语句。Lambda查询:引入Lambda表达式和条件构造器,使得查询条件的拼接更加直观、简洁,提高代码的可读性。自动填充:支持在实体类中定义字段的填充策略,例如创建时间、更新时间等,在插入和更新时自动填充相应的字段。

2024-03-11 19:23:33 627

原创 富文本编辑器Quill安装及使用

【代码】富文本编辑器Quill安装及使用。

2024-03-05 01:06:40 454

原创 Pinia持久化插件-persist安装及使用

Pinia持久化插件-persistPinia默认是内存存储,当刷新浏览器的时候会丢失数据Persist插件可以将pinia中的数据持久化的存储。

2024-03-04 00:44:03 1003

原创 Axios请求拦截器

Axios 的请求拦截器用于在发送请求前对请求进行一些预处理或修改。在每次使用 Axios 发送请求之前,检查是否有有效的 token,并将它添加到请求头中,以便后端进行身份验证。

2024-03-04 00:16:59 379

原创 前端Pinia状态管理库存储JWT令牌信息

Pinia 的一些关键特性:基于 Composition API: Pinia 利用了 Vue 3 的 Composition API,提供了更灵活和强大的状态管理方式。可以使用 ref、reactive 等 Composition API 提供的功能来定义和操作状态。零依赖: Pinia 本身几乎没有依赖,因此它是一个轻量级的库。这使得它成为一个在 Vue 3 项目中使用的简单而灵活的状态管理解决方案。模块化: Pinia 支持将状态拆分为模块,每个模块都有自己的状态、操作和 getter。

2024-03-03 23:41:13 336

原创 Vue Router安装及使用

Vue Router 是 Vue.js 官方的路由管理器。它可以通过简单的配置映射路由到对应的组件。

2024-03-03 19:29:28 165

原创 ajax前端跨域问题解决

由于浏览器的同源策略限制,向不同源(不同协议、不同域名、不同端口)发送ajax请求会失败。

2024-03-03 00:29:22 201

原创 VUE项目环境准备笔记

在项目文件夹下打开cmd,输入以下指令创建vue项目(需要在有网环境下并下载配置好nodejs)1.1安装加载完毕后可以在项目node_modules目录下检查element依赖是否导入成功。2.1安装加载完毕后可以在项目node_modules目录下检查axios 依赖是否导入成功。3.1安装加载完毕后可以在项目node_modules目录下检查sass 依赖是否导入成功。√ 是否要引入一款端到端(End to End)测试工具?√ 是否引入 ESLint 用于代码质量检测?√ 请输入项目名称: …

2024-03-02 17:46:57 729

原创 将令牌信息备份到Redis中

分布式环境下的共享状态: 在微服务架构中,用户的请求可能涉及多个服务,而这些服务需要验证用户的令牌。将令牌信息存储在分布式缓存中,如Redis,可以实现跨服务的令牌验证,避免了各服务之间的状态同步问题。减轻认证服务的压力: 在一些系统中,认证服务负责颁发令牌和验证令牌的工作。如果每次请求都需要到认证服务验证令牌,可能会导致认证服务成为系统的瓶颈。将令牌信息缓存到Redis中,可以降低认证服务的负担,提高系统的整体性能。

2024-02-28 22:17:11 388

原创 开启分页查询 PageHelper

在实际开发中,将数据库操作直接写在注解里面虽然方便,但也存在一些问题。这种写法通常适用于简单的查询和更新操作,但在涉及到复杂业务逻辑、事务管理等场景时,更推荐使用 XML 配置文件或者 MyBatis 的注解结合 XML 文件的方式。

2024-02-27 23:29:32 202

原创 在 Spring Boot 中进行分组校验

Validated(User.BasicInfoGroup.class) 表示在添加用户时只校验 BasicInfoGroup 分组的规则,而 @Validated(User.UpdateInfoGroup.class) 表示在更新用户时只校验 UpdateInfoGroup 分组的规则。

2024-02-27 17:30:51 634

原创 用户信息合法性验证工具类

环境版本号java 17用户信息合法性验证工具类,目前仅含,用户名、密码、邮箱验证合法性校验。

2024-02-26 23:27:30 207

原创 ThreadLocal的使用

环境版本号java 17ThreadLocal 是 Java 中的一个类,它提供了线程局部变量。线程局部变量是一种多线程编程的技术,允许创建的变量只被同一线程访问,其他线程无法访问这个变量。每个线程都有自己的局部变量副本,互不干扰。在 Java 中,可以使用 ThreadLocal 来存储线程私有的数据,这样每个线程都可以独立地管理自己的数据,而不会干扰其他线程。ThreadLocal 通常用于解决线程安全的问题,因为它避免了共享变量的竞争条件。

2024-02-25 23:27:57 347

原创 登录拦截器

这个拦截器的主要逻辑在 preHandle 方法中。它首先从请求头中获取名为 “Authorization” 的参数,这个参数通常用于携带 JWT 令牌。然后,它使用 JwtUtil 类的 parseToken 方法验证令牌的有效性。如果验证通过,preHandle 方法返回 true,表示放行该请求;如果验证失败,设置响应状态码为 401,并返回 false,表示拦截该请求。这个拦截器需要注册到 Spring MVC 中,可以通过配置类或者 XML 配置的方式将其加入拦截器。

2024-02-25 18:33:03 126

原创 JWT令牌使用及验证

JWT与Session的比较1、轻量且无状态: JWT是轻量级的,信息以JSON格式存储,使其易于在网络上传输。与传统的基于Session的认证相比,JWT不需要在服务器上保存会话状态,使其无状态。这意味着每个请求都包含了身份验证信息,服务器无需在存储和管理会话状态。2、跨域: JWT可以在跨域情况下安全地传递信息,因为它可以在请求头中传递,并且不受同源策略的限制。3、可扩展性: JWT的负载部分可以包含任意数量的声明,这使得它非常灵活,可以用于各种场景,如身份验证、授权和信息交换。

2024-02-24 18:48:20 689

原创 用户注册信息合法性验证

验证用户输入用户名密码和邮箱的合法性。

2024-02-23 20:46:02 896

原创 用户注册时对录入密码进行MD5加密

MD5加密可以对录入数据库密码进行加密,数据库管理员也无法直接看到明文密码。

2024-02-23 19:02:50 184

原创 springboot整合mybatis其二

在实际开发中,将数据库操作直接写在注解里面虽然方便,但也存在一些问题。这种写法通常适用于简单的查询和更新操作,但在涉及到复杂业务逻辑、事务管理等场景时,更推荐使用 XML 配置文件或者 MyBatis 的注解结合 XML 文件的方式。

2024-02-23 18:40:01 277

原创 springboot整合mybatis其一

在实际开发中,将数据库操作直接写在注解里面虽然方便,但也存在一些问题。这种写法通常适用于简单的查询和更新操作,但在涉及到复杂业务逻辑、事务管理等场景时,更推荐使用 XML 配置文件或者 MyBatis 的注解结合 XML 文件的方式。

2024-02-23 18:24:51 420

原创 Springboot自动配置原理

Springboot自动配置原理在主启动类上添加了 SpringBootApplication注解,这个注解组合了 EnableAutoConfiguration注解。EnableAutoConfiguration注解又组合了Import注解,导入了 AutoConfigurationImportSelector类。实现selectlmports方法,这个方法经过层层调用,最终会读取META-INF目录下的后缀名为。AutoConfiguration.imports的文件,Springboot2.7

2024-02-22 21:05:44 141

空空如也

空空如也

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

TA关注的人

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