分享6个国内优秀Java后台管理框架的开源项目

Java小辰 | | 访问(148)

  后台管理系统是内容管理系统Content Manage System(简称CMS)的一个子集。CMS是Content Management System的缩写,意为"内容管理系统"。 内容管理系统是企业信息化建设和电子政务的新宠,也是一个相对较新的市场。

  我自己也一直在搭建一个即好用 ,又美观的后台管理系统的手动架,可以即拿的即用的项目。不用要重复的去造轮子,把有限的时间用去一些有意思的事。

  下面分享一下开源中国中有哪些优秀的Java开源后台管理系统。所有项目在gitee.com中输入项目都可以搜索的到。

  ThinkGem / JeeSite(开发人员/项目名称)

  watch 2100  star 4000  fork 2600

  JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台。

  JeeSite是您快速完成项目的最佳基础平台解决方案,JeeSite是您想学习Java平台的最佳学习案例,JeeSite还是接私活的最佳助手。

  JeeSite是在Spring Framework基础上搭建的一个Java基础开发平台,以Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,Activit为工作流引擎。是JavaEE界的最佳整合。

  JeeSite主要定位于企业信息化领域,已内置企业信息化系统的基础功能和高效的代码生成工具, 包括:系统权限组件、数据权限组件、数据字典组件、核心工具组件、视图操作组件、工作流组件、代码生成等。 前端界面风格采用了结构简单、性能优良、页面美观大气的Twitter Bootstrap页面展示框架。 采用分层设计、双重验证、提交数据安全编码、密码加密、访问验证、数据权限验证。 使用Maven做项目管理,提高项目的易开发性、扩展性。

  JeeSite目前包括以下四大模块,系统管理(SYS)模块、 内容管理(CMS)模块、在线办公(OA)模块、代码生成(GEN)模块。 系统管理模块 ,包括企业组织架构(用户管理、机构管理、区域管理)、 菜单管理、角色权限管理、字典管理等功能; 内容管理模块 ,包括内容管理(文章、链接),栏目管理、站点管理、 公共留言、文件管理、前端网站展示等功能; 在线办公模块 ,提供简单的请假流程实例;代码生成模块 ,完成重复的工作。

  JeeSite 提供了常用工具进行封装,包括日志工具、缓存工具、服务器端验证、数据字典、当前组织机构数据 (用户、机构、区域)以及其它常用小工具等。另外还提供一个强大的在线 代码生成 工具, 此工具提供简单的单表、一对多、树结构功能的生成,如果对外观要求不是很高,生成的功能就可以用了。 如果你使用了JeeSite基础框架,就可以很高效的快速开发出,优秀的信息管理系统。

  技术选型:

  1、后端

  核心框架:Spring Framework 4.1

  安全框架:Apache Shiro 1.2

  视图框架:Spring MVC 4.1

  服务端验证:Hibernate Validator 5.2

  布局框架:SiteMesh 2.4

  工作流引擎:Activiti 5.21

  任务调度:Spring Task 4.1

  持久层框架:MyBatis 3.2

  数据库连接池:Alibaba Druid 1.0

  缓存框架:Ehcache 2.6、Redis

  日志管理:SLF4J 1.7、Log4j

  工具类:Apache Commons、Jackson 2.2、Xstream 1.4、Dozer 5.3、POI 3.9

  2、前端

  JS框架:jQuery 1.9。

  CSS框架:Twitter Bootstrap 2.3.1(稳定是后台,UI方面根据需求自己升级改造吧)。

  客户端验证:JQuery Validation Plugin 1.11。

  富文本在线编辑:CKEditor

  在线文件管理:CKFinder

  动态页签:Jerichotab

  手机端框架:Jingle

  数据表格:jqGrid

  对话框:jQuery jBox

  下拉选择框:jQuery Select2

  树结构控件:jQuery zTree

  日期控件: My97DatePicker

  项目主页:

  stylefeng / guns

  watch 1.5k  star 3.7k  fork 1.8k

  Guns基于SpringBoot,致力于做更简洁的后台管理系统,完美整合springmvc + shiro + mybatis-plus + beetl + flowable!Guns项目代码简洁,注释丰富,上手容易,同时Guns包含许多基础模块(用户管理,角色管理,部门管理,字典管理等10个模块),可以直接作为一个后台管理系统的脚手架!

  项目特点:

  基于SpringBoot,简化了大量项目配置和maven依赖,让您更专注于业务开发,独特的分包方式,代码多而不乱。

  完善的日志记录体系,可记录登录日志,业务操作日志(可记录操作前和操作后的数据),异常日志到数据库,通过@BussinessLog注解和LogObjectHolder.me().set()方法,业务操作日志可具体记录哪个用户,执行了哪些业务,修改了哪些数据,并且日志记录为异步执行,详情请见@BussinessLog注解和LogObjectHolder,LogManager,LogAop类。

  利用beetl模板引擎对前台页面进行封装和拆分,使臃肿的html代码变得简洁,更加易维护。

  对常用js插件进行二次封装,使js代码变得简洁,更加易维护,具体请见webapp/static/js/common文件夹内js代码。

  利用ehcache框架对经常调用的查询进行缓存,提升运行速度,具体请见ConstantFactory类中@Cacheable标记的方法。

  controller层采用map + warpper方式的返回结果,返回给前端更为灵活的数据,具体参见com.stylefeng.guns.modular.system.warpper包中具体类。

  防止XSS攻击,通过XssFilter类对所有的输入的非法字符串进行过滤以及替换。

  简单可用的代码生成体系,通过SimpleTemplateEngine可生成带有主页跳转和增删改查的通用控制器、html页面以及相关的js,还可以生成Service和Dao,并且这些生成项都为可选的,通过ContextConfig下的一些列xxxSwitch开关,可灵活控制生成模板代码,让您把时间放在真正的业务上。

  控制器层统一的异常拦截机制,利用@ControllerAdvice统一对异常拦截,具体见com.stylefeng.guns.core.aop.GlobalExceptionHandler类。

  页面统一的js key-value单例模式写法,每个页面生成一个唯一的全局变量,提高js的利用效率,并且有效防止多个人员开发引起的函数名/类名冲突,并且可以更好地去维护代码。

  项目图片

  老A / AG-Admin

  watch 1.2k  star 2.8k  fork 1.1k

  AG-Admin是国内首个基于Spring Cloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Eureka、Fegin、Ribbon、Zuul、Hystrix、JWT Token、Mybatis等主要框架和中间件,前端采用vue-element-admin组件。

  模块说明

  Jieven / eova

  watch 1.1k  star 2.1k  fork 1.1k

  最简单的快速开发平台,简单才是高科技,因为简单所以更快,降低70%开发成本。

  Easy 简单开发

  Object 元数据驱动业务

  View 常用功能界面

  Admin 信息管理和维护

  项目图片:

  lengleng / pig

  watch 521  star 1k  fork 479

  基于Spring Cloud、oAuth2.0开发基于Vue前后分离的开发平台

  完成功能

  完善登录:账号密码模式、短信验证码模式、社交账号模式均整合Spring security oAuth

  单点登录:基于Srping security oAuth 提供单点登录接口,方便其他系统对接

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

  机构管理:配置系统组织机构(公司、部门、小组),树结构展现,可随意调整上下级。

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

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

  字典管理:对系统中经常使用的一些较为固定的数据进行维护,如:是否、男女、类别、级别等。

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

  服务限流:多种维度的流量控制(服务、IP、用户等)

  分库分表:shardingdbc分库分表策略

  数据权限: 使用mybatis对原查询做增强,业务代码不用控制,即可实现。

  文件系统: 支持FastDFS、七牛云,扩展API几行代码实现上传下载

  消息中心:短信、邮件模板发送,几行代码实现发送

  聚合文档:基于zuul实现 swagger各个模块的实现

  代码生成:前后端代码的生成,支持Vue

  缓存管理:基于Cache Cloud 保证Redis 的高可用

  服务监控: Spring Boot Admin

  分布式任务调度: 基于elastic-job的分布式文件系统,zookeeper做调度中心

  zipkin链路追踪: 数据保存ELK,图形化展示

  pinpoint链路追踪: 数据保存hbase,图形化展示

  项目图片:

  Ehsan / CrapApi

  CrapApi - CrapApi免费开源API接口管理系统、API接口调试工具:API接口管理、文档管理、接口调试。

  CrapApi能做什么

  主要功能:项目管理、用户管理、模块管理、接口管理、接口版本管理、接口拷贝、接口文档pdf下载、接口mock、模块加密访问、

  接口在线调试、数据字典管理、数据字典加密访问多管理员、多权限、多角色管理、自定义菜单、自定义网站样式、文档留言、

  错误码管理、接口排序、DOC、PDF、TEXT、EXCEL等资源管理、支持版本号控制、文档内容检索、操作日志记录、

  根据日志恢复数据、markdown编辑器、kindeditor编辑器、angularjs编辑器、Lucene搜索、项目成员管理...

  特点:

  1.单页应用、异步交互,响应速度快

  2.具有多种账户类型,具有角色、权限管理功能,适合企业内部使用

  3.支持用户注册、项目支持成员管理,适合团队协作办公,可企业内部部署,也可在线使用

  4.接口支持文档下载、在线调试、接口监控、数据mock等,适合企业内部接口开发

  项目图片:

  谢谢开源社区中开发人员们的无私奉献。让我们学习到了很多东西。

  原文:https://www.jianshu.com/p/70e0c254225b