自定义表单系统 开源_一款轻量级,可快速上手的开源后台系统

news/2024/7/7 8:42:18

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工具
  • ExcelReadUtil EXCEL读工具
  • ExcelWriteUtil EXCEL写工具
  • CSVUtils CSV读工具
  • 简单封装了java8日期工具类 DateUtil

项目界面

登录

1d2fc16c650f2a924308eda1f2285ac6.png

主页

48603517ab3c30bf4c58b948952f5a01.png

报表

06be34c064e1ec9babb8c6885ebd93f6.png

基础配置

3bbd7ebce4a951126d51efa2f405e550.png

编辑及修改

dae876ee93a80f7b8823c348931af509.png

系统配置

bc8ecdce4ae52fca3217998ce668d32a.png

项目运行及打包

  • 本地项目运行
  • run MeeApplication and program arguments add --spring.profiles.active=dev
  • 注dev、test、prod均为pom.xml下配置的环境参数
  • Fork mee-admin
  • git clone mee-admin to local
  • init DB table
  • use Idea IDE open project
  • auto build dependency
  • Idea start config
  • 打包及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


http://www.niftyadmin.cn/n/2009961.html

相关文章

几个学习git以及github的好网站

Git是一个开源的分布式版本控制系统&#xff0c;可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 ——摘自百度百科 git 使用简易指南 http://www.bootcss.com/p/git-guide/Git…

windows 服务器使用量高导致网络异常

背景windows服务器访问外部某个ip 端口 不通&#xff0c;但是ping 和tracert都正常经反复排查&#xff0c;排除安全策略过滤、丢包等可能原因 排查&解决方法1、检查服务器本身问题&#xff0c;发现内存占用率非常高&#xff1b;2、netstat 连接比较多3、服务器暂时不提供服…

不同类型变量进行运算规则

系统有默认的转化规则&#xff0c;就是从精度低的转化为精度高的&#xff0c;避免计算时精度的丢失 具体转换规则如下 char --> short --> int ---> unsigned --> long --> unsigned long --> float --> double 例子&#xff1a; int a 1; double b 1…

react 开源项目_前端路上的开源优质项目分享

从19年到20年,笔者利用空余时间陆陆续续做了一些开源项目, 大部分开源项目都立足于企业实际业务需求, 所以笔者觉得有必要做一个总结和复盘,在复盘的过程中希望也能对大家有所帮助.今后笔者的开源项目都会放在这篇文章中,如果想学习的可以多交流.1. 基于indexedDB封装的轻量级缓…

表约束

非空约束&#xff0c;唯一约束&#xff0c;自增长&#xff0c;默认约束主键约束&#xff0c;外键约束转载于:https://www.cnblogs.com/mariobear/p/9179996.html

怎么限制网页上传图片的尺寸_黑橙修图:有了这个网站,你再也不用担心你的图片超过限制大小了...

当我们在一些网站提交证件照或头像时&#xff0c;有时候会遇到图片大小超过网站限制的情况。比如前一阵就有朋友要我帮忙压缩一下证件照。要从xxxK压缩到xxk。其实压缩图片大小的方法有很多&#xff0c;有人可能会说&#xff1a;“ps里面&#xff0c;你xxxxxxxxx设置一下&#…

用Vue来实现音乐播放器(10):Scroll组件的抽象和应用

了解better-scroll什么时候是需要refresh计算的&#xff1f;&#xff1f;通常我们遇到的better-scroll不能滚动的问题的根源是什么&#xff1f;&#xff1f;better-scroll的渲染原理是&#xff1a;根据初始化的时机 或者调用refresh()的时机的那个时候的scroll的父元素的高度和…

微软应用商店有哪些值得推荐的应用

对于很多Windows用户来讲&#xff0c;微软应用商店&#xff08;Microsoft Store&#xff09;是个印象不深刻&#xff0c;容易被忽略的好功能。从Windows 8 系统开始&#xff0c;微软开始对其进行了较大的改革&#xff0c;包含功能、界面设计、交互等各方面。其中最具有战略性代…