Java开发脚手架选择

前言

还是前面说到的项目开发,部分数据已经可以获取到了,现在要选择一款合适的脚手架,比自己从头开发要合适的多。后端开发语言使用Java,前端倾向使用vue,毕竟别的还得去重新学,鉴于此有了几款选择的。

选择项

选择1 若依RuoYi

源码地址:https://gitee.com/y_project/RuoYi
文档地址:http://doc.ruoyi.vip/
演示地址:http://ruoyi.vip/
若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。核心技术采用Spring、MyBatis、Shiro没有任何其它重度依赖。

内置功能

  1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
  3. 岗位管理:配置系统用户所属担任职务。
  4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
  7. 参数管理:对系统动态配置常用参数。
  8. 通知公告:系统通知公告信息发布维护。
  9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  10. 登录日志:系统登录日志记录查询包含登录异常。
  11. 在线用户:当前系统中活跃用户状态监控。
  12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
  13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
  14. 系统接口:根据业务代码自动生成相关的api接口文档。
  15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
  16. 缓存监控:对系统的缓存查询,删除、清空等操作。
  17. 在线构建器:拖动表单元素生成相应的HTML代码。
  18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
    Java开发脚手架选择_第1张图片

选择2 Jeecg Boot

JeecgBoot是一款基于SpringBoot+代码生成器的快速开发平台,采用前后端分离架构:SpringBoot,Mybatis,Shiro,JWT,Vue&Ant Design。强大的代码生成器让前端和后台代码一键生成,不需要写任何代码,保持jeecg一贯的强大,绝对是全栈开发福音。
JeecgBoot在提高UI能力的同时,降低了前后分离的开发成本,JeecgBoot还独创在线开发模式(No代码概念),一系列在线智能开发:在线配置表单、在线配置报表、在线图表设计、在线设计流程等等。
JEECG宗旨是:简单功能由Online Coding配置实现(在线配置表单、在线配置报表、在线图表设计、在线设计流程、在线设计表单),复杂功能由代码生成器生成进行手工Merge,既保证了智能又兼顾了灵活;
业务流程采用工作流来实现、扩展出任务接口,供开发编写业务逻辑,表单提供多种解决方案: 表单设计器、online配置表单、编码表单。同时实现了流程与表单的分离设计(松耦合)、并支持任务节点灵活配置,既保证了公司流程的保密性,又减少了开发人员的工作量。
官方网站: http://www.jeecg.com
源码下载: https://github.com/jeecgboot/jeecg-boot
开发文档: http://doc.jeecg.com
在线演示: http://boot.jeecg.com

官方介绍的优点

  1. 采用最新主流前后分离框架(Springboot+Mybatis+antd),容易上手;
    代码生成器依赖性低,灵活的扩展能力,可快速实现二次开发;
  2. 支持微服务SpringCloud Alibaba(Nacos、Gateway、Sentinel、Skywalking),提供切换机制支持单体和微服务自由切换
  3. 开发效率高,采用代码生成器,单表、树列表、一对多、一对一等数据模型,增删改查功能一键生成,菜单配置直接使用;
  4. 代码生成器提供强大模板机制,支持自定义模板,目前提供四套风格模板(单表两套、树模型一套、一对多三套)
  5. 代码生成器非常智能,在线业务建模、在线配置、所见即所得支持23种类控件,一键生成前后端代码,大幅度提升开发效率,不再为重复工作发愁。
  6. 低代码能力:Online在线表单(无需编码,通过在线配置表单,实现表单的增删改查,支持单表、树、一对多、一对一等模型,实现人人皆可编码)
  7. 低代码能力:Online在线报表(无需编码,通过在线配置方式,实现数据报表,可以快速抽取数据,减轻开发压力,实现人人皆可编码)
  8. 低代码能力:Online在线图表(无需编码,通过在线配置方式,实现曲线图,柱状图,数据报表等,支持自定义排版布局,实现人人皆可编码)
  9. 封装完善的用户、角色、菜单、组织机构、数据字典、在线定时任务等基础功能,支持访问授权、按钮权限、数据权限等功能
  10. 常用共通封装,各种工具类(定时任务,短信接口,邮件发送,Excel导入导出等),基本满足80%项目需求
  11. 简易Excel导入导出,支持单表导出和一对多表模式导出,生成的代码自带导入导出功能
  12. 集成简易报表工具,图像报表和数据导出非常方便,可极其方便的生成图形报表、pdf、excel、word等报表;
  13. 采用前后分离技术,页面UI风格精美,针对常用组件做了封装:时间、行表格控件、截取显示控件、报表组件,编辑器等等
  14. 查询过滤器:查询功能自动生成,后台动态拼SQL追加查询条件;支持多种匹配方式(全匹配/模糊查询/包含查询/不匹配查询);
  15. 数据权限(精细化数据权限控制,控制到行级,列表级,表单字段级,实现不同人看不同数据,不同人对同一个页面操作不同字段
  16. 页面校验自动生成(必须输入、数字校验、金额校验、时间空间等);
  17. 支持SAAS服务模式,提供SaaS多租户架构方案。
  18. 分布式文件服务,集成minio、阿里OSS等优秀的第三方,提供便捷的文件上传与管理,同时也支持本地存储。
  19. 主流数据库兼容,一套代码完全兼容Mysql、Postgresql、Oracle、Sqlserver、MariaDB、达梦等主流数据库。
  20. 集成工作流activiti,并实现了只需在页面配置流程转向,可极大的简化bpm工作流的开发;用bpm的流程设计器画出了流程走向,一个工作流基本就完成了,只需写很少量的java代码;
  21. 低代码能力:在线流程设计,采用开源Activiti流程引擎,实现在线画流程,自定义表单,表单挂靠,业务流转
  22. 多数据源:及其简易的使用方式,在线配置数据源配置,便捷的从其他数据抓取数据;
  23. 提供单点登录CAS集成方案,项目中已经提供完善的对接代码
  24. 低代码能力:表单设计器,支持用户自定义表单布局,支持单表,一对多表单、支持select、radio、checkbox、textarea、date、popup、列表、宏等控件
  25. 专业接口对接机制,统一采用restful接口方式,集成swagger-ui在线接口文档,Jwt token安全验证,方便客户端对接
  26. 接口安全机制,可细化控制接口授权,非常简便实现不同客户端只看自己数据等控制
  27. 高级组合查询功能,在线配置支持主子表关联查询,可保存查询历史
  28. 提供各种系统监控,实时跟踪系统运行情况(监控 Redis、Tomcat、jvm、服务器信息、请求追踪、SQL监控)
  29. 消息中心(支持短信、邮件、微信推送等等)
  30. 集成Websocket消息通知机制
  31. 移动自适应效果优秀,提供APP发布方案:
  32. 支持多语言,提供国际化方案;
  33. 数据变更记录日志,可记录数据每次变更内容,通过版本对比功能查看历史变化
  34. 平台UI强大,实现了移动自适应
  35. 平台首页风格,提供多种组合模式,支持自定义风格
  36. 提供简单易用的打印插件,支持谷歌、火狐、IE11+ 等各种浏览器
  37. 示例代码丰富,提供很多学习案例参考
  38. 采用maven分模块开发方式
  39. 支持菜单动态路由
  40. 权限控制采用 RBAC(Role-Based Access Control,基于角色的访问控制)
  41. 提供新行编辑表格JVXETable,轻松满足各种复杂ERP布局,拥有更高的性能、更灵活的扩展、更强大的功能
    Java开发脚手架选择_第2张图片

选择3 EL-ADMIN

在线演示:https://el-admin.vip/demo/
在线文档:https://el-admin.vip/
源码地址:https://gitee.com/elunez/eladmin
一个基于 Spring Boot 2.1.0 、 Spring Boot Jpa、 JWT、Spring Security、Redis、Vue、Element-UI 的前后端分离的后台管理系统。
主要特性

  1. 使用最新技术栈,社区资源丰富。
  2. 高效率开发,代码生成器可一键生成前后端代码
  3. 支持数据字典,可方便地对一些状态进行管理
  4. 支持接口限流,避免恶意请求导致服务层压力过大
  5. 支持接口级别的功能权限与数据权限,可自定义操作
  6. 自定义权限注解与匿名接口注解,可快速对接口拦截与放行
  7. 对一些常用地前端组件封装:表格数据请求、数据字典等
  8. 前后端统一异常拦截处理,统一输出异常,避免繁琐的判断
  9. 支持在线用户管理与服务器性能监控,支持限制单用户登录
  10. 支持运维管理,可方便地对远程服务器的应用进行部署与管理

系统功能

  1. 用户管理:提供用户的相关配置,新增用户后,默认密码为123456
  2. 角色管理:对权限与菜单进行分配,可根据部门设置角色的数据权限
  3. 菜单管理:已实现菜单动态路由,后端可配置化,支持多级菜单
  4. 部门管理:可配置系统组织架构,树形表格展示
  5. 岗位管理:配置各个部门的职位
  6. 字典管理:可维护常用一些固定的数据,如:状态,性别等
  7. 系统日志:记录用户操作日志与异常日志,方便开发人员定位排错
  8. SQL监控:采用druid 监控数据库访问性能,默认用户名admin,密码123456
  9. 定时任务:整合Quartz做定时任务,加入任务日志,任务运行情况一目了然
  10. 代码生成:高灵活度生成前后端代码,减少大量重复的工作任务
  11. 邮件工具:配合富文本,发送html格式的邮件
  12. 七牛云存储:可同步七牛云存储的数据到系统,无需登录七牛云直接操作云数据
  13. 支付宝支付:整合了支付宝支付并且提供了测试账号,可自行测试
  14. 服务监控:监控服务器的负载情况
  15. 运维管理:一键部署你的应用
    Java开发脚手架选择_第3张图片

对比

也不知道从哪些维度对比。活跃度上若依是最高的;流程上面JeecgBoot是最全的,做个oa的话可能开发量最小;但我最终选择了eladmin,不是因为功能,而是我不想写那么多sql语句,个人习惯,eladmin是基于Spring Boot Jpa的,比较习惯。仅此而已。
所以系统后面的开发都是基于eladmin的。

你可能感兴趣的:(职位简历维护系统开发,java,springboot,spring,架构)