开源后台系统*mee-admin*
mee-admin开源后台系统
Preface
这是一个开放的时代,我们不能总是把东西揣在口袋里面自己乐呵。
也正如名言所说的“如果你有两块面包,你当用其中一块去换一朵水仙花”
所以,继上一次把我的两个个人项目开源之后今天我再一次把自有的后台页面也开源出来,以回馈整个开源世界。
开源地址
https://github.com/funnyzpc/mee-admin
项目结构概述
mee-admin是由我的个人mee项目开源而来,mee-admin项目是一个前后端一体化的项目,不过在代码上实现了页面与数据分离,是一个非常好的
轻量级后端工程,所以在正式使用时您会发现主体业务部门均是采用json交互,前端页面使用模板工具实现数据展现及编辑
与jeesite不一样,我们不使用jsp+sitmesh+ehcache臃肿化项目
与Spring-Cloud-Platform xboot 不一样,这里不使用vue iview 做前后端分离,也不使用springclooud做集群分布式
所以我的项目更加轻量级,不需要装node 不需要npm打包 需不要安装nginx 同时也不需要编写无聊的mapper接口,不需要单独写增删改....
所以对于企业内部需求开发更是无比的急速
同时,mee-admin只需具有java后端以及一点点javascript开发能力,便可急速上手。
项目技术相关
- 使用
springboot 2.3.4.RELEASE作为基础框架 - 使用
mybatis作为dao框架 - 使用
postgreSQL作为框架DB(可支持Mysql及Oracle) - 使用
shiro做权限管理 - 使用
Freemarker做页面模板 - 使用
jquery插件作javascript基本扩展库使用- 目前只是一些组件依赖用,建议大多数情况下使用
ES5或ES6规范的javascript扩展
- 目前只是一些组件依赖用,建议大多数情况下使用
- 使用
handlebars做表单及数据模板 - 使用
seajs做基础模块管理 - 封装了序列(
ID)生成器(支持分布式)SeqGenServiceImpl序列生成器(支持分布式)SeqGenUtil普通序列生成器
- 封装了
Jackson的json库,完全可替代fastjson - 封装了物理分页
PhysicalPageInterceptor及逻辑分页LogicalPageIntercepter(两个可任选其一),完全替代RowBounds及一众分页依赖 - 封装了
Excel及CSV工具ExcelReadUtilEXCEL读工具ExcelWriteUtilEXCEL写工具CSVUtilsCSV读工具
- 简单封装了java8日期工具类
DateUtil
项目界面
登录

主页

报表

基础配置

编辑及修改

系统配置

项目运行及打包
本地项目运行
- Fork
mee-admin - git clone
mee-adminto local - init DB table
- use Idea IDE open project
- auto build dependency
- Idea start config
- run
MeeApplicationand program arguments add--spring.profiles.active=dev - 注dev、test、prod均为pom.xml下配置的环境参数
- run
- Fork
打包及Linux服务器构建脚本,见mee-admin
- 必须安装maven(方法请自行搜索引擎查找)
项目访问
- local:
http://127.0.0.1/mee/login - server:
http://[Your DOMAIN or HOST+PORT]/mee/login
Notice
虽整个项目封装的较为完整, 但是对于一些自定义的展示还是需要有一定的前端技能
作为补偿,这里大致写了功能开发流程[see:Function flow](#### Function flow),具体的还需要读者具体学习哈~
Function flow
功能开发流程
- 添加mybatis SQL xml文件及映射实体类entity
- 编写控制器controller及业务service代码
- 编写构建前端页面并添加菜单项
- 添加依赖js
resources/public/module下 - 后端添加权限标识
@RequiresPermissions("your_auth_code") - 前端(菜单和业务页面)添加权限标识
<@shiro.hasPermission name="your_auth_code"></@shiro.hasPermission> - 后台添加菜单项目
- 后台角色权限分配
js添加对话框或按钮扩展功能(这是难点!)
业务前端js采用模块化依赖并封装了表单著录以及增删改查相应功能,十分便捷,
目前对于扩展功能(比如添加一个’重算‘) 需要自定义函数及相应逻辑,具体流程大致如下
- 在search-form内定义button控件(一定要有name属性)
- 在依赖的js文件内的init函数内定义扩展
toolbar:{ "控件属性名": 属性名对应函数 } - 编写相应函数逻辑
end
欢迎提交issue,如有好的建议及意也请留下脚印,这里先感谢哈
同时, 如有困难可以咨询 funnyzpc@gmail.com
开源后台系统*mee-admin*的更多相关文章
- django (三) admin后台系统
admin后台系统 1. 安装MySQL 1,安装mysql: sudo apt install mysql-server (安装过程中输入密码并牢记) 2,安装后进入mysql: mysql ...
- 开源一个golang小程序商城后台系统(moshopserver)
开源一个golang小程序商城后台(moshopserver) golang和c/c++比起来是一门新的语言,一直想学,网上搜集了一些资料,有些人说很容易上手,确实是这样,和C/C++比起来,少了很多 ...
- 玩转Django2.0---Django笔记建站基础八(admin后台系统)
第八章 admin后台系统 admin后台系统也成为网站后台管理系统,主要用于对网站前台的信息进行管理,如文字.图片.影音和其他日常使用文件的发布.更新.删除等操作,也包括功能信息的统计和管理,如用户 ...
- 开源社交系统ThinkSNS v4.6.1更新日志及功能详解!
ThinkSNS 开源社交系统 v4.6.1更新日志 [修复]聊天无法使用emoji问题 [修复]后台禁用用户后,app第三方登录可登录问题 [修复]部分接口问题 [修复]h5个人中心获取用户信息问题 ...
- 《暗黑世界GM管理后台系统》部署+功能说明文档
http://www.9miao.com/product-10-1073.html <暗黑世界GM管理后台系统>部署+功能说明文档 <暗黑世界GM管理后台系统>部署+功能说明文 ...
- 基于Vue实现后台系统权限控制
原文地址:http://refined-x.com/2017/08/29/基于Vue实现后台系统权限控制/,转载请注明出处. 用Vue/React这类双向绑定框架做后台系统再适合不过,后台系统相比普通 ...
- 开源ERP系统Odoo搭建文档
本文参考链接地址: https://devecho.com/v/209/ https://www.cnblogs.com/wxylog/p/6386974.html 什么是Odoo 为什么选择Odoo ...
- JAVA开源B2C系统
前言 最近有人想面向境外销售商品,但是又不想依托于亚马逊这些平台,于是找我来帮忙想弄个B2C系统.因为刚开始只是打算试试水,也就不打算投入多少成本了.所以这边就考虑使用开源的B2C系统来直接使用了. ...
- 30个开源电子商务系统(PHP)
osCommerce osCommerce是一款著名的PHP开源电子商务解决方案,提出“开箱即用”的强大功能,使网上商店安装非常方便快捷,并可以作为GNU通用公共授权的开源项目免费发布.osComme ...
随机推荐
- 用aop去解决事物问题(tx)记录学习之aop1.2
上一个文章我们了解了什么事aop,以及aop的使用方法,主要是把自己想要加入的通知(advice)加入到我们的方法里, 比如上一章我们说的事把myadvice类中的before方法织入到userser ...
- 使用【QQ五笔的码表】转成【百度手机自定义码表】
使用[QQ五笔码表]转成[百度手机自定义码表] QQ五笔码表先转成多多格式. 这里选用极点>>多多. 然后去掉空格. 转成GB.去掉没的字. 百度要的是这种格式. 现再用点讯工具转成 de ...
- React设计模式相关
关于我在React设计模式上做的一些思考: 一,项目里实战的经历 最开始我根据组件不同的职能定义,拆分了展示组件和容器组件两大类,后来随着业务逻辑越来越复杂,容器组件代码越来越冗长,我又加入了HOC高 ...
- springboot AOP实战
目录 AOP实战 maven依赖 定义切面 采用扫描类的方式 采用注解的方式 通知 前置通知 后置通知 返回通知 异常通知 环绕通知 JoinPoint 获取切点处的注解 git AOP实战 mave ...
- C++——百分率
代码如下: #include <iostream> #include <cmath> using namespace std; int main() { double a; c ...
- 使用java.io.RandomAccessFile更改文本文件的内容
原文本内容: 2020-01-21 08:31:08.520 [main] INFO logbackCfg.App -秦时明月汉时关 2020-01-21 08:31:08.521 [main] ER ...
- centos7在线yum安装jumpsever2.2.2
#查看主机名 host=$(hostname) # 修改字符集,否则可能报 input/output error的问题,因为日志里打印了中文 localedef -c -f UTF-8 -i zh_C ...
- Java代码工具EasyCode使用
写Java代码,增删改查,最无趣而又最基础.那机器人就来了,帮你写,减少你的基础的无趣的工作. 推荐两个代写代码的神奇工具Mybatis-generator与EasyCode.这两款软件的数据库持久层 ...
- [LeetCode]287. 寻找重复数(二分)
题目 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数.假设只有一个重复的整数,找出这个重复的数. 示例 1: 输入: [ ...
- myBatis源码解析-二级缓存的实现方式
1. 前言 前面近一个月去写自己的mybatis框架了,对mybatis源码分析止步不前,此文继续前面的文章.开始分析mybatis一,二级缓存的实现.附上自己的项目github地址:https:// ...