标签: ruoyi

12 篇文章

RuoYi-Vue-Plus 阅读笔记 – 12 – 自定义注解实现防重幂等
前言 系统框架的防重功能参考了美团 GTIS 解决方案,参考文章 分布式系统互斥性与幂等性问题的分析与解决 GTIS 的实现思路是将每一个不同的业务操作赋予其唯一性。这个唯一性是通过对不同操作所对应的唯一的内容特性生成一个唯一的全局ID来实现的。基本原则为:相同的操作生成相同的全局ID;不同的操作生成不同的全局ID。 生成的全局ID需要存储在外部存…
RuoYi-Vue-Plus 阅读笔记 – 11 – SpringCache 缓存增强
Springboot 从3.1开始自带的缓存功能,定义了 Cache 和 CacheManager 接口,并且提供了各种实现,如 CaffeineCache、ConcurrentMapCache、RedisCache、RedissionCache 这里通过项目案例来介绍下缓存的实现原理 缓存管理器 Spring Cache 提供的缓存管理为 Cac…
RuoYi-Vue-Plus 阅读笔记 – 10 – Minio 文件存储
MinIO作为一款基于Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。 文档地址:https://docs.min.io/cn/ 本节介绍下使用 minio 来作为项目的对象存储,想要使用 minio,首先需要搭建 minio 服务,然后在应用端接入 Minio 服务搭建 1panel 的应用商店可以直接安…
RuoYi-Vue-Plus 阅读笔记 – 9 – Mail api 邮件服务
java 中也提供了 mai 相关的功能,功能相对较弱,现在也停止了更新,目前 java 应用通常使用第三方库 Jakarta Mail 来实现邮件功能 配置 mail: enabled: false host: smtp.163.com port: 465 # 是否需要用户名密码验证 auth: true # 发送方,遵循RFC-822标准 fr…
RuoYi-Vue-Plus 阅读笔记 – 7 – MyBatis Plus 数据分页插件
分页插件配置 前文 MyBatis Plus 配置一文中提到了,在自动装配的时候引入了分页插件,官方提供的默认有如下参数: 属性名 类型 默认值 描述 overflow boolean false 溢出总页数后是否进行处理(默认不处理,参见 插件#continuePage 方法) maxLimit Long 单页分页条数限制(默认无限制,参见 插件…
RuoYi-Vue-Plus 阅读笔记 – 6 – MyBatis Plus 数据权限插件
权限拦截器 DataPermissionInterceptor 是 MyBatis Plus 的一个数据权限插件,支持动态拦截执行 SQl 然后拼接权限部分 SQL片段。 怎么使用呢? 拦截器 PlusDataPermissionInterceptor,这里在查询、修改、删除的操作时做了拦截处理,核心的方式实现了 dataPermissionHan…
RuoYi-Vue-Plus 阅读笔记 – 5 – MyBatis Plus 配置
common-mybatis.yml 配置 # 内置配置 不允许修改 如需修改请在 nacos 上写相同配置覆盖 # MyBatisPlus配置 # https://baomidou.com/config/ mybatis-plus: # 启动时是否检查 MyBatis XML 文件的存在,默认不检查 checkConfigLocation: fa…
RuoYi-Vue-Plus 阅读笔记 – 4 – 动态数据源
采用 dynamic-datasource 支持世面大部分数据库,通过yml配置即可动态管理异构不同种类的数据库,也可通过前端页面添加数据源 数据库连接池采用 HikariCP Spring官方内置连接池,配置简单,无需写配置类 spring: datasource: type: com.zaxxer.hikari.HikariDataSource…