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(可支持MysqlOracle)
  • 使用shiro做权限管理
  • 使用Freemarker做页面模板
  • 使用jquery 插件作javascript基本扩展库使用
    • 目前只是一些组件依赖用,建议大多数情况下使用ES5ES6规范的javascript扩展
  • 使用handlebars做表单及数据模板
  • 使用seajs 做基础模块管理
  • 封装了序列(ID)生成器(支持分布式)
    • SeqGenServiceImpl 序列生成器(支持分布式)
    • SeqGenUtil 普通序列生成器
  • 封装了Jacksonjson库,完全可替代fastjson
  • 封装了物理分页PhysicalPageInterceptor及逻辑分页LogicalPageIntercepter(两个可任选其一),完全替代RowBounds及一众分页依赖
  • 封装了ExcelCSV工具
    • ExcelReadUtil EXCEL读工具
    • ExcelWriteUtil EXCEL写工具
    • CSVUtils CSV读工具
  • 简单封装了java8日期工具类 DateUtil

项目界面

  • 登录

  • 主页

  • 报表

  • 基础配置

  • 编辑及修改

  • 系统配置

项目运行及打包

  • 本地项目运行

  • 打包及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采用模块化依赖并封装了表单著录以及增删改查相应功能,十分便捷,
目前对于扩展功能(比如添加一个’重算‘) 需要自定义函数及相应逻辑,具体流程大致如下
  1. search-form内定义button控件(一定要有name属性)
  2. 在依赖的js文件内的init函数内定义扩展toolbar:{ "控件属性名": 属性名对应函数 }
  3. 编写相应函数逻辑

end

欢迎提交issue,如有好的建议及意也请留下脚印,这里先感谢哈

同时, 如有困难可以咨询 funnyzpc@gmail.com

开源后台系统*mee-admin*的更多相关文章

  1. django (三) admin后台系统

    admin后台系统 1. 安装MySQL 1,安装mysql: sudo apt install mysql-server   (安装过程中输入密码并牢记)   2,安装后进入mysql: mysql ...

  2. 开源一个golang小程序商城后台系统(moshopserver)

    开源一个golang小程序商城后台(moshopserver) golang和c/c++比起来是一门新的语言,一直想学,网上搜集了一些资料,有些人说很容易上手,确实是这样,和C/C++比起来,少了很多 ...

  3. 玩转Django2.0---Django笔记建站基础八(admin后台系统)

    第八章 admin后台系统 admin后台系统也成为网站后台管理系统,主要用于对网站前台的信息进行管理,如文字.图片.影音和其他日常使用文件的发布.更新.删除等操作,也包括功能信息的统计和管理,如用户 ...

  4. 开源社交系统ThinkSNS v4.6.1更新日志及功能详解!

    ThinkSNS 开源社交系统 v4.6.1更新日志 [修复]聊天无法使用emoji问题 [修复]后台禁用用户后,app第三方登录可登录问题 [修复]部分接口问题 [修复]h5个人中心获取用户信息问题 ...

  5. 《暗黑世界GM管理后台系统》部署+功能说明文档

    http://www.9miao.com/product-10-1073.html <暗黑世界GM管理后台系统>部署+功能说明文档 <暗黑世界GM管理后台系统>部署+功能说明文 ...

  6. 基于Vue实现后台系统权限控制

    原文地址:http://refined-x.com/2017/08/29/基于Vue实现后台系统权限控制/,转载请注明出处. 用Vue/React这类双向绑定框架做后台系统再适合不过,后台系统相比普通 ...

  7. 开源ERP系统Odoo搭建文档

    本文参考链接地址: https://devecho.com/v/209/ https://www.cnblogs.com/wxylog/p/6386974.html 什么是Odoo 为什么选择Odoo ...

  8. JAVA开源B2C系统

    前言 最近有人想面向境外销售商品,但是又不想依托于亚马逊这些平台,于是找我来帮忙想弄个B2C系统.因为刚开始只是打算试试水,也就不打算投入多少成本了.所以这边就考虑使用开源的B2C系统来直接使用了. ...

  9. 30个开源电子商务系统(PHP)

    osCommerce osCommerce是一款著名的PHP开源电子商务解决方案,提出“开箱即用”的强大功能,使网上商店安装非常方便快捷,并可以作为GNU通用公共授权的开源项目免费发布.osComme ...

随机推荐

  1. Python字符串类型格式化之format方法

    python字符串格式化一般使用 format() 方法,用法如下: <模板字符串>.format(<逗号分割的参数>) 其中模板字符串中可以由一个或多个 {} 组成的 槽 , ...

  2. RabbitMQ入门指南

    消息队列(Message Queue,以下简称MQ)常用于异步系统的数据传递.若不用MQ,我们只能[在应用层]使用轮询或接口回调等方式处理,这在效率或耦合度上是难以让人满意的.当然我们也可以在系统间保 ...

  3. PJSIP开发指南

    一.通用设计 1.1   架构 1.1.1        通信图 下面的图展示了SIP消息在PJSIP组件间从后端到前端如何传递的. 1.1.2        类图 下面的图显示类视图 1.2   E ...

  4. Java开发环境搭建的准备工作

    Java开发环境搭建的准备工作 网络配置(修改hosts) 什么时候需要 比如我们在安装homeBrew的时候会遇到 curl: (7) Failed to connect to raw.github ...

  5. Axios拦截器配置

    Axios 拦截器的配置如下 分三块:基础配置.请求之前拦截.响应之前拦截 发送所有请求之前和操作服务器响应数据之前对这种情况过滤. http request 请求拦截器 每次发送请求之前判断是否存在 ...

  6. oracle 11g 导入表时 提示 ***值太大错误

    导入数据库时,总是提示**值太大,实际值是**的错误. 具体忘了错误代码是什么了 ——! 经查询,这个是由于字符集设置的不是gbk的,导致导入时遇到中文字符出现的问题, 解决方法: 如果可以的话就把数 ...

  7. wpf之DataGrid绑定DataTable,其中DataGridComboBoxColumn双向绑定枚举enum

    百度了快一天,没结果,除了几个原创的,都是复制粘贴的内容. 不想用别的笨办法,于是脑洞大开,想出了我的办法. 首先是前台代码,与网上的比较类似: xmlns:jz="clr-namespac ...

  8. 14 el-dialog 基本结构

    1 dialogVisible父组件提供,:visible.sync直接修改父组件的dialogVisible,会报错,需要加上before-close属性 <template> < ...

  9. JS实现斐波那契数列的五种方式

    下面是五种实现斐波那契数列的方法 循环   function fibonacci(n){ var res1 = 1; var res2 = 1; var sum = res2; for(var i = ...

  10. 数据库行转列的sql语句

    问题描述 假设有张学生成绩表(CJ)如下Name Subject Result张三 语文 80张三 数学 90张三 物理 85李四 语文 85李四 数学 92李四 物理 82 现在 想写 sql 语句 ...