专栏名称: IT大咖说
大咖干货,不再错过。 让不在大会现场的程序猿、攻城狮也能体验现场的精彩瞬间。
目录
相关文章推荐
北美留学生观察  ·  到底谁害死了大S?一场流感悲剧背后的多重拷问 ·  昨天  
北美留学生观察  ·  留不下来的留学生们,正在婚绿... ·  2 天前  
常观  ·  放榜!恭喜常州这些学生 ·  3 天前  
常观  ·  放榜!恭喜常州这些学生 ·  3 天前  
移民(微博搜索)  ·  移民(微博搜索)-20250131-4 ·  6 天前  
北美留学生观察  ·  厉害!华裔学生霸屏美国"少年诺贝尔奖",17 ... ·  5 天前  
51好读  ›  专栏  ›  IT大咖说

MIT开源协议,一套快速开发平台,全部毫无保留可免费使用

IT大咖说  · 公众号  ·  · 2024-02-20 13:27

正文

一、开源项目简介


Ruoyi-Flex

Ruoyi-Flex是基于JDK21、Spring Boot V3.2.X+平台 前后端分离的未来8年更快的Java开发框架

Ruoyi-Flex是一套全部开源的快速开发平台,针对”分布式集群与多租户“场景全方位升级,使用MIT开源许可协议,毫无保留给个人及企业免费使用。基于RuoYi-Vue、RuoYi-Vue-Plus,集成MyBatis-Flex、JDK21、SpringBootV3.2.X+、Lombok、Sa-Token、SpringDoc、Hutool、SpringBoot Admin、PowerJob、Vue3、Element-Plus、MinIO等优秀开源软件,支持PostgreSQL、MySQL开源数据库及其衍生分布式数据库。

二、开源协议

使用MIT开源协议

三、界面展示

演示图











四、功能概述

系统特色

Ruoyi-Flex秉承“写的更少、性能更好、出错更低、交流通畅、快速入门” 的理念,为您带来全方位的赋能与提升:

(1)写的更少

借助MyBatis-Flex,Ruoyi-Flex显著降低了代码输入工作量,最高降低了25.85%,参考“演示模块”中的同一功能演示程序源码对比分析(排除相同代码量的控制器、前端代码):

除了那些复杂的遗留项目中的统计报表,在绝大部分情况下 Ruoyi-Flex 不需要手写 SQL 语句。

(2)性能更好

除了集成的JDK21、SpringBootV3.2、MyBatis-Flex的性能提升,系统“代码生成”模块生成的代码,凡是涉及到后台数据库的多表查询,没有采用数据库的LeftJoin、InnerJoin等SQL方式,而是使用WithRelation编程装配来取代数据库LeftJoin SQL关联查询,数据库不用维护表间外键关系,将多表关联SQL语句拆分为对各个单表的主键查询,关联无 SQL,性能提高10倍。

(3)出错更低

原来用mybatis开发需要手写SQL语句,开发后期需要增加字段,修改xml文件是一种灾难,一不留神就犯错了;而Ruoyi-Flex借助MyBatis-Flex则很好地规避了此问题,如果字段输入错误,开发环境IDEA就会自动标红报警,避免犯错。

(4)交流通畅

“非我族类,其心必异”。Ruoyi-Flex集成了一大波国产开源软件:MyBatis-Flex、Sa-Token、Hutool、PowerJob、Element-Plus等,同根同源,交流自然顺畅,开发中遇到问题可联系作者快速得到解决。例如,同一个领域的安全框架,一个中国人只需半天就可学会Sa-Token干活,如果是学Spring Security的话,七天也不一定能学会。

(5)多端同步

Ruoyi-Flex提供“1+3”端,1个后台端、3个前台端,熟悉js的可使用flex-elementplus-ui前端,熟悉ts的可使用ruoyiflex-elementplus-ts前端,既熟悉ts又熟悉antdesign的请使用ruoyiflex-antdesign-vben前端,总有一款适合您的前端供您选择!

(6)入门快速

Ruoyi-Flex已集成各种开源开发框架,扫平了技术障碍,可直接上手干活。使用者只需要设计好数据库表结构,系统能可视化生成前后端本地代码,单表、树表、主子表任你选,10分钟就能开发一个模块,快速入门,开发高效。

内置功能

  • 租户管理:系统内租户的管理 如:租户套餐、过期时间、用户数量、企业信息等。

  • 租户套餐管理:系统内租户所能使用的套餐管理 如:套餐内所包含的菜单等。

  • 客户端管理:系统内对接的所有客户端管理 如: pc端、小程序端等支持动态授权登录方式 如: 短信登录、密码登录等 支持动态控制token时效。

  • 用户管理:用户是系统操作者,该功能主要完成系统用户配置。

  • 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。

  • 岗位管理:配置系统用户所属担任职务。

  • 菜单管理:配置系统菜单,操作权限,按钮权限标识等。

  • 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。

  • 字典管理:对系统中经常使用的一些较为固定的数据进行维护。

  • 参数管理:对系统动态配置常用参数。

  • 通知公告:系统通知公告信息发布维护。

  • 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。

  • 登录日志:系统登录日志记录查询包含登录异常。

  • 文件管理:引入云存储服务,将文件存储到MinIO、七牛、阿里、腾讯等OSS服务器上,支持上传、下载。

  • 在线用户:当前系统中活跃用户状态监控。

  • 调度中心:集成PowerJob全新一代分布式任务调度与计算框架。

  • 代码生成:前后端代码的生成(java、html、vue、js),支持单表、树表、主子表,减少70%以上的开发工作量。

  • 系统接口:集成springdoc,根据文档注释自动生成相关的api接口文档。

  • 监控中心:集成Spring Boot Admin,监视集群系统CPU、内存、磁盘、堆栈、在线日志、Spring相关配置等。

  • 缓存监控:对系统的缓存信息查询,命令统计等。

  • 后台数据库:支持PostgreSQL、MySQL开源数据库及其衍生分布式数据库。

  • 演示模块:mybatis、mybatis-flex两种格式代码的单表、树表、主子表三种类型的演示程序。

  • 实现多租户功能。

  • 实现乐观锁功能。

  • 实现逻辑删除功能。

  • 启用JAVA21虚拟线程、分代ZGC功能。

  • 实现API接口加密功能,密码使用密文传输。


五、技术选型

Ruoyi-Flex是SpringBootV3平台快速开发框架,集成JDK21、SpringBootV3.2.X+、MyBatis-Flex、Lombok、Sa-Token、SpringDoc、Hutool、SpringBoot Admin、PowerJob、Vue3、Element-Plus、AntDesign-Vben、MinIO等优秀开源软件,准备作为未来8年软件开发的底座。

本地开发环境

环境要求

项目

推荐版本

说明

JDK

21.0.1+

JAVA环境依赖(需配置环境变量)

Spring Boot

3.2.1+

Spring环境

Maven

3.9.3及以上版本

项目构建(需配置环境变量)

IDEA

IDEA2023.3及以上版本

集成开发工具

Redis

V5及以上版本

缓存

MySQL

8.0.x+

数据库任选一(Ruoyi-Flex V4.1.X默认)

PostgreSQL

15+

数据库任选一(Ruoyi-Flex V4.2.X默认)

前端项目

Ruoyi-Flex实行前后端分离仓库,本项目是java后端部分,目前有3个前端项目:

(1)ruoyiflex-elementplus-ts

使用elementplus、typescript构建,项目: ruoyiflex-elementplus-ts

(2)ruoyiflex-antdesign-vben

使用antdesign、vben、typescript构建,项目: ruoyiflex-antdesign-vben

(3)flex-elementplus-ui

使用elementplus、js构建,项目: flex-elementplus-ui


来源:https://www.toutiao.com/article/7336964197915460107/?log_from=15eec22373e3_1708406655950

“IT大咖说”欢迎广大技术人员投稿,投稿邮箱:[email protected]









请到「今天看啥」查看全文