发布时间:2023-04-27 文章分类:WEB开发, 电脑百科 投稿人:王小丽 字号: 默认 | | 超大 打印

1、基础开发框架

        1.1 什么是基础开发框架?

基础框架可以理解为建立一个项目所需的基础框架,这个基础框架为凝聚了之前开发项目的通用、共性的方法、工具、技术等组成的代码包。

现有我们公司有两类基础框架:
(1)基于web应用的基础框架

(2)基于数据迁移场景的基础框架

大家可根据具体的实际场景制定试用自己的基础框架。

        1.2 为什么需要基础框架?

做开发的同事可能都知道,每次研究一项新技术含定时任务、权限、文件上传等这类都需要花时间研究与调试。但是只要第一次研究通了,后面开发效率就快了。

若对以往的项目不进行总结:

A写了定时任务相关代码 B 写了文件上传相关代码 C写了权限相关代码

现有D项目需要同时有定时任务、文件上传、权限管理相关功能,如何处理?

传统方式:逐一搜寻A、B、C复制相关代码,此效率极为低下,因此基础框架就有了必要性。

基础框架方式:封装相关代码,形成common层,并搭建模板项目作为基础框架供其他项目调用

        1.3 现有基础框架有哪些?

力软、JEECGBOOT、若依、芋道。其中力软为付费产品,JEECGBOOT的码云star为4.1k,若依的码云star为30.9k,芋道的码云star为13.8K。综合可见芋道和若依框架分值相对较高。

2 若依框架

官方网站:RuoYi 若依官方网站 |后台管理系统|权限管理系统|快速开发框架|企业管理系统|开源框架|微服务框架|前后端分离框架|开源后台系统|RuoYi|RuoYi-Vue|RuoYi-Cloud|RuoYi框架|RuoYi开源|RuoYi视频|若依视频|RuoYi开发文档|若依开发文档|Java开源框架|Java|SpringBoot|SrpingBoot2.0|SrpingCloud|Alibaba|MyBatis|Shiro|OAuth2.0|Thymeleaf|BootStrap|Vue|Element-UI||www.ruoyi.vipJava开发框架选型对比:ruoyi与yudao框架http://www.ruoyi.vip/

主要包含:RuoYi  RuoYi-Vue  RuoYi-Cloud,分别为快速开发版,前后端分离版,微服务版。

生态齐全,并拥有拓展生态含uniapp版本、pgsql版本、mybaitplus版本、国产数据库版本、react、ant desing版本等

        2.1前端页面

Java开发框架选型对比:ruoyi与yudao框架

Java开发框架选型对比:ruoyi与yudao框架

 Java开发框架选型对比:ruoyi与yudao框架

        2.2系统架构

主要层及架构

1、系统环境

2、主框架

3、持久层

4、视图层

主要的工具如下

Java开发框架选型对比:ruoyi与yudao框架

 3、芋道框架

项目地址

ruoyi-vue-pro: 🔥 官方推荐 🔥 RuoYi-Vue 全新 Pro 版本,优化重构所有功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 微信小程序,支持 RBAC 动态权限、数据权限、SaaS 多租户、Flowable 工作流、三方登录、支付、短信、商城等功能。你的 ⭐️ Star ⭐️,是作者生发的动力!Java开发框架选型对比:ruoyi与yudao框架https://gitee.com/zhijiantianya/ruoyi-vue-pro?_from=gitee_search

        3.1 前端页面

Java开发框架选型对比:ruoyi与yudao框架

 Java开发框架选型对比:ruoyi与yudao框架

        3.2 功能清单

4 框架对比

        4.1 若依框架优势

1、功能简洁包含项目需要的最小框架:定时任务、系统参数、字典、通知公告、代码生成,启动项目速度快

2、具备完整的生态,查看其他语言代码方便

        4.2 芋道框架优势

1、功能模块多,集成mapstruct、mybaitplus、Oauth2 、短信、错误码,启动速度慢

2、集成特定场景应用:支付、工作流

3、框架复杂,一些场景排查问题较难,有严格的VO 与APP\ADMIN接口区分,以及业务端和内部接口区分。代码框架接口清晰便捷明显,系统之间相互调用较多。

4、自动编写单元测试,每次打包时会利用的sqlite数据库进行单元测试。

5 框架选型

建议小团队使用若依框架,以下内容为亲自使用总结

(1)开发速度快,问题定位快

(2)可寻找任何语言开源替代(例如vue3的框架可能在IE9下不支持,需要换VUE2或者其他框架),或者项目团队成员只会net或python语言,这些都可以找到替代产品;国产化软件也可以找到相关替代。

建议大团队使用芋道框架

(1)APP端和pc端严格区分;业务API与前端接口严格区分

(2)有较多开源的拓展功能,集成了Hutool工具包,支持包含文件上传、小程序登录三方登录、工作流、短信、多租户、支付等功能。

(3)初始内置多种数据库脚本,可天然支持多种数据库含国产数据库。

6、若依基础框架项目分享

目前用若依的mybaitplus做了两个示例,分别包含单表查询、多表查询的案例。中间使用了代码生成方法。

        6.1单表查询

(1)首先新建数据库表

(2)点开代码生成页面,配置列表、查询、搜索字段,对于字典或者时间范围类型等条件可对应进行配置

(3)生成代码,前端拷贝、后端拷贝。

        6.2多表联合查询

(1)后端首先以单表模式生成增删改查

(2)在对应controller增加新的查询接口

(3)如果是表格页面,则前端复制页面的vue和api,直接进行修改及编写;表单可借助form-generator进行搭建。

具体若依案例项目含(单表及多表案例)的项目代码见链接.

若依mybaitplus基础框架