# springboot-plus
一个基于SpringBoot 2 的管理后台系统,包含了用户管理,组织机构管理,角色管理,功能点管理,菜单管理,权限分配,数据权限分配,代码生成等功能
系统基于Spring Boot2技术,前端采用了Layui2。数据库以MySQL为实例,理论上是跨数据库平台.
基本技术栈来源于我为电子工业出版社编写的的[<<Spring Boot 2 精髓 >>](http://ibeetl.com/sb2/#more) (这本书每一章也有各种例子,但Springboot-plus 更偏向于应用而不是教学)
当前版本:1.1.3
技术交流群:219324263(满) 636321496
开源地址:https://gitee.com/xiandafu/springboot-plus
视频介绍:https://pan.baidu.com/s/1dFPoaT7
![doc/readme/user.png](doc/readme/user.png)
![doc/readme/user.png](doc/readme/role.png)
![doc/readme/user.png](doc/readme/data.png)
![doc/readme/user.png](doc/readme/codePorject.png)
![doc/readme/user.png](doc/readme/codeconfig.png)
![doc/readme/user.png](doc/readme/codegen.png)
![doc/readme/user.png](doc/readme/codegen2.png)
![doc/readme/user.png](doc/readme/excelExport.png)
# 1 使用说明
## 1.1 安装说明
> 建议在彻底熟悉plus系统之前,先暂时不要修改其他配置选项,免得系统无法访问
>
> 本系统基于Spring Boot 2 ,因此请务必使用JDK8,且打开编译选项[parameters(点击了解parameters)](http://www.mamicode.com/info-detail-2162647.html),<u> 并重新编译工程,如果你没有使用Java8的 parameters 特性,系统不能正常使用</u>
从Git上获取代码后,通过IDE导入此Maven工程,包含俩个子工程
* admin-core ,核心包,包含了缓存,数据权限,公用的JS和HTML页面。
* admin-console, 系统管理功能,包含了用户,组织机构,角色,权限,数据权限,代码生成等管理功能
com.ibeetl.admin.CosonleApplication 是系统启动类,在admin-console包下,在运行这个之前,还需要初始化数据库,位于doc/starter-mysql.sql,目前只提供mysql, oracle, postgresql脚本。理论上支持所有数据库
还需要修改SpringBoot配置文件application.properties,修改你的数据库地址和访问用户
~~~properties
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/starter?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
~~~
运行CosonleApplication,然后访问http://127.0.0.1:8080/ 输入admin/123456 则可以直接登录进入管理系统
如果成功启动后运行报错:变量userId未定义,位于第6行,那是因为你没有启用[parameters](http://www.mamicode.com/info-detail-2162647.html),启用后,需要重新build整个工程
> 微信扫描付费查看安装和子系统生成视频(约25分钟)
>
> ![doc/readme/user.png](doc/readme/pay-install.png)
## 1.2 创建子系统
SpringBoot-plus 是一个适合大系统拆分成小系统的架构,或者是一个微服务系统,因此,如果你需要创建自己的业务系统,比如,一个CMS子系统,建议你不要在SpringBoot-Plus 添加代码,应该是新建立一个maven工程,依赖admin-core,或者依赖admin-console(如果你有后台管理需求,通常都有,但不是必须的)
创建子系统,可以进入代码生成>子系统生成, 输入maven项目路径,还有包名,就可以直接生成一个可运行的基于SpringBoot-Plus 的子系统,所有代码可以在这些完成
### 1.2.1 配置子系统
子系统不需要做任何配置即可在IDE里直接运行,如果你想打包城jar方式运行,则需要添加
~~~xml
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
~~~
如果你想打包成war放到tomcat下运行,需要修改maven打包为war
~~~xmml
<packaging>war</packaging>
~~~
### 1.2.2 菜单系统
系统默认提供三种类型菜单
* 系统级菜单,出现在页面顶部,表示一个子系统
* 导航菜单,出现在页面左边,点击导航将打开其下所有菜单
* 菜单,点开菜单将定位到页面,菜单必须关联到一个功能点。
建议新建立一个子系统来放置新功能
SpringPlus-Boot 并非以菜单或者按钮来组织整个系统,而是以功能点来组织整个系统提供的功能。如果要使得菜单生效,你必须要先常见一个功能点并且功能点有一个访问地址,然后将此菜单关联到这个功能点
> SpringBoot-Plus 先建立功能点是个好习惯,功能点被组织成一颗树,代表了系统应该提供功能的功能,我们看代码就会看到,功能点跟菜单,跟权限,和数据权限都有密切关系
### 1.2.2 添加代码
可以参考1.3业务代码生成生成初始化的代码,业务代码生成了14个文件,包含前后端所有代码,可以通过生成来了解代码习作规范
## 1.3 业务代码生成
在介绍如何利用Plus开发系统之前,先介绍代码生成功能,此功能可以生成前后端代码总计14个文件,你可以通过预览功能了解如何开发这个系统
![doc/readme/user.png](doc/readme/codeconfig.png)
代码生成针对表进行代码生成,包括JS,JAVA,SQL和HTML,可以通过预览功能直接预览。在生成代码到本地前,有些参数需要修改,否则,代码生成后显示的都是英文
* 显示字段 : 当此实体显示在任何地方的时候,能代表此实体的名称,比如用户名,组织机构名
* 变量名:可以自己设定一个较短的名字,此变量名会用于前后端的变量
* urlBase:你规划的子系统,最后访问路径是urlBase+变量名字
* system: 存放sql目录的的名称
其他修改的地方有
是否包含导入导出,如果选择,则会生成导入导出的代码,导入导出模板则需要参考已有功能(比如数据字典)来完成
是否包含附件管理,如果选择,则业务对象可以关联一组附件,比如客户关联一组附件,或者申请信息关联一组附件。
字段信息的显示名字,这个用于前端列表,表单的显示,应当输入中文名字
作为搜索,可以勾选几个搜索条件,系统自动生成一个搜索配置类
如果字段关联数据字典,那么设置一个数据字典,这样,生成的界面将会变成一个下拉列表
### 1.3.1 前端代码
前端代码采用了layui的JS框架,使用了按需加载的方式,文档参考 http://www.layui.com/doc/base/infrastructure.html.
* index.js: 系统入口JS,包含了查询和表格
* add.js : 新增操作的所有JS
* edit.js: 编辑操作的所有JS
* del.js: 删除操作的所有JS
基础JS
* Common.js: 封装了通常JS功能,如jquery的post方法,layui的窗口方法
* Lib.js 封装了业务相关方法,如submitForm,loadOrgPanel等方法
### 1.3.2 HTML代码
页面采用layui,文档参考 http://www.layui.com/demo/
模板语言了使用Beetl,文档参考ibeetl.com
* index.html: 功能首页
* add.html: 新增首页
* edit.html: 编辑操作首页
> 采用layui的好处是自带了页面和组件还有JS的管理,能完成大多数业务需求
基础UI组件:
* orgInput.tag.html 组织机构输入框
* simpleDictSelect.tag.html 字典下拉列表
* simpleDataSelect.tag 包含key-value的下拉列表
* searchForm.tag.html 通用搜索表单
* submitButtons.tag.html 提交按钮
* accessButton.tag.html 普通按钮(含权限)
* attachment.tag.html 附件管理组件
* ....
小徐博客
- 粉丝: 1978
- 资源: 5893
最新资源
- 台达DVP系列PLC与欧姆龙E5CZ温控器485通讯:昆仑通态及威纶通触屏温度控制、报警设定实现指南,台达DVP系列PLC与欧姆龙E5CZ温控器485通讯 目的:通过台达DVP系列PLC,昆仑
- DXF解析为运动控制指令:软件模块支持比例缩放、按图层精准控制加工参数,点线圆弧解析全面覆盖,预留多平台接口,专业运动控制软件必备 ,DXF解析成运动控制指令DEMO源代码,运动控制软件必备模块 支
- "信捷PLC控制系统下的二极管伺服电机高速组装机:性能稳定,产能达三万个/小时-电气工程人员参考指南",二极管伺服电机控制高速组装机,产能约每小时三万个 采用信捷PLC控制系统,编码器和伺服应用
- 基于前瞻轨迹规划的高级六轴机械臂运动控制卡:精准编程,高效绘图雕刻与激光切割,多维运动与自动化处理新境界 ,6轴机械臂 运动控制器,运动控制卡 采用前瞻运动轨迹规划,通用G代码指令编程,G5指令三
- EV高压电机控制器软件源代码开源全套资料及强大上位机调试工具实战参考手册,EV高压电机控制器360v乘用车平台,某知名电控厂家主推产品,软件源代码,软件FOC矢量控制算法,boot源码,全部开源,强大
- FPGA与W5500以太网模块:SPI传输80MHz速率下的Verilog软核源码与多SOCKET实现指南,fpga 以太网w5500,SPI传输80MHz, Alte A收发verilog软核 ip
- 西门子PLC 1200与TP 700触摸屏通过Modbus通讯实现工业自动化控制,西门子1200PLC和tp700触摸屏通过modbus通讯控 ,西门子1200PLC; TP700触摸屏; Modbu
- 三菱Q173系列电子凸轮参数设置与运动控制应用详解:电子齿轮比理解与原理揭秘,三菱运动控制电子凸轮应用 三菱Q173系列的电子凸轮使用,包括凸轮参数设置,电子齿轮比等的理解,简单应用不是问题,原理才是
- dddjg_130682.apk
- nlptoollog.dat
- 三菱FX3U型PLC与昆仑通泰MCGS触摸屏控制松下伺服电机综合控制方案,三菱fx3u型PLC和昆仑通泰MCGS触摸屏控制松下伺服电机控制程序 一、包含内容: 1. mcgs7.7触摸屏程序 2.三菱
- Labview源码用于国内主机厂的Modbus TCP与西门子PLC通信数据获取与处理,搭配研华PCI板卡与数据曲线存储追溯,实用教程分享,设备Labview源码,给国内主机厂配套,采用Modus
- 西门子S7-1200PLC与KTP700触摸屏控制V90伺服电机操作指南:实现正反转、位置与速度设定,运行状态显示,以太网通讯,IP地址192.168.0.1,西门子1200PLC和KTP700触摸屏
- 艾默生充电桩15kw模块全套资料揭秘:原版软件源码、核心算法、原理图BOM及通信协议,全方位解析带调试工具,艾默生充电桩15kw模块,软件源码加原理图BOM 艾默生充电桩15kw模块原版软件源码含核心
- 西门子SMART触摸屏与两大变频器Modbus通讯实现多功能控制及数据读取文档(附详细程序与源程序文件),西门子SMART触摸屏与2台变频器通讯,通过modbus rtu与三菱FR-D700、台达MS
- 西门子PLC控制台实现伺服电机张力智能调控:正反转与速度设定功能,西门子200PLC控制台达伺服电机正反转,步科触摸屏,模拟量控制; 实现功能如下: 当前张力值小于设定值时,电机反转 当前张力值大于
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈