前言

在多个实际工程项目的开发实践中,我们频繁遇到权限管理、系统对接、消息通知等功能的重复开发需求。这种高度定制化的开发模式不仅效率低下,更不利于项目的长期维护与技术沉淀。

今天给大家介绍的这款项目,是在深入研究了若依(RuoYi)、JEECGBOOT 等优秀框架以及当前流行的低代码理念,汲取其精华,最终设计并实现了 Asmoboot 这款快速开发框架。

简介

Asmoboot 是一款Java低代码快速开发框架,含轻量级数据中台、轻量级物联网平台、基于ZLmediakit的流媒体平台等。

框架核心能力:

Asmoboot 的核心专注于提升开发效率和系统健壮性,提供开箱即用的解决方案:

  • • 细粒度权限控制: 内置强大的行级数据权限管理。

  • • 安全保障: 集成完善的安全登录防护机制。

  • • 轻量数据中台: 提供基础的数据整合与处理能力。

  • • 低代码融合: 无缝集成 Amis 等低代码前端框架,加速界面构建。

扩展能力与行业实践:

在满足通用快速开发需求的基础上,Asmoboot 更衍生出强大的行业扩展模块(部分模块提供商业化支持):

  • • 视频监控平台: 基于 ZLMediaKit 深度开发,原生支持 GB28181、RTSP 等主流协议,提供完整的级联平台能力及 PTZ 云台控制。

  • • 物联网设备管理: 参考阿里云物联网平台最佳实践,构建了基于物模型的设备全生命周期管理模块。

  • • 行业解决方案: 积累了如工地实名制平台对接、智慧停车场、智慧用电等成熟的行业应用模块,可直接复用或定制。

技术架构

开发环境

  • • 语言: Java 8

  • • IDE(JAVA): IDEA / Eclipse安装lombok插件

  • • IDE(前端): WebStorm 或者 IDEA

  • • 依赖管理: Maven

  • • 数据库: MySQL5.7+

  • • 缓存: Redis

后端

  • • 基础框架: Spring Boot 2.2.5.RELEASE

  • • 持久层框架: Mybatis-plus 3.4.1

  • • 安全框架: Apache Shiro 1.7.0,Jwt 3.11.0

  • • 数据库连接池: 阿里巴巴Druid 1.1.22

  • • 缓存框架: redis

  • • 日志打印: logback

  • • 消息队列: rabbitMq

  • • 定时执行框架: xxl-job

  • • 其他: fastjson、Swagger-ui 、easyExcel、lombok、hutool等。

项目部署

项目搭建环境要求

  1. 1. 推荐安装docker-ce 17版本以上

  2. 2. 推荐安装docker-compose 1.25.0版本

  3. 3. 推荐使用centos7为运行环境

项目端口访问要求

*1.8899端口为API接口
*2.80端口为页面访问端口
*3.9000及9001为分布式存储minio端口 
*4.10504为websocket通信端口 
5.3308为Mysql数据库端口

以上加*号务必添加防火墙白名单,否则将影响正常使用

一键部署

① 下载源码,进入boot_start目录;

② 修改.env文件下的环境参数

*MINIO_ENDPOINT 为部署服务器可访问IP+9000端口 请勿使用localhost以及127.0.0.1 例如 http://hostIP:9000

MINIO_ACCESS_KEY 为minio access_key

MINIO_SECRET_KEY 为minio secret_key

DATASOURCE_PWD 为mysql密码 ,账号默认为root

RABBITMQ_DEFAULT_USER 为rabbitmq账号

RABBITMQ_DEFAULT_PASS 为rabbitmq密码  

加*的请务必根据部署环境进行调整更改,否则会无法启动

③ 将boot_start该目录下所有文件及文件夹复制到服务器上干净目录,一键部署命令。

docker-compose up -d

系统初始化效果

功能截图

平台配置

设备配置

基础资料

工地实名制

智慧安防

智能停车系统

考勤管理系统

开放能力

AI能力支持

在 Asmoboot 平台中,可自由针对接入的摄像头、无人机监控等视频流数据配置AI扩展能力,快速交付业务。

开源地址

https://github.com/RotaNova/asmoboot