开源一个功能完整的SpringBoot项目框架

摘要:
打开一个功能齐全的Spring Boot项目框架的好处即将到来,特别是在用户权限和菜单方面。您可以使用完整的用户权限模块。Spring包括并管理应用程序中对象的生命周期和配置。Spring提供了一个方便的API来处理与特定技术相关的异常(例如,讨论一下JDBC)。知识学院是一个在线课程材料管理系统(支持应用程序移动终端)。

开源一个功能完整的SpringBoot项目框架


福利来了,给大家带来一个福利。
最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。

想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。

打算把这个框架分享出来,供大家使用和学习。

为什么用框架?

框架可以学习整体的流程模式,可以使用完整的用户权限模块,可以帮助初学者更好的初步学习。

框架的特点:

1、轻量: Spring 是轻量的,基本的版本大约2MB。 
2、控制反转: Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。 
3、面向切面的编程(AOP): Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。 
4、容器: Spring 包含并管理应用中对象的生命周期和配置。 
5、MVC框架: Spring的WEB框架是个精心设计的框架,是Web框架的一个很好的替代品。 
6、事务管理: Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA)。 
7、异常处理: Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO抛出的)转化为一致的unchecked 异常。

 
下面我们针对该开源框架做如下描述说明:
 

一点知识学院后台管理系统
关注公众号,进群,一起讨论

一点知识学院 是一个在线课程资料的管理系统(是对app手机端的支撑),项目采用SpringBoot +JPA+easyui开发。

项目地址:https://github.com/ProceduralZC/pointZSXY.git

大家可以直接通过Gitbhub下载源码启动项目。不明白的可以查看功能简介,或者 关注公众号  “ 程序职场 ” 加群 交流

本来计划把项目跑起来放到网上供小伙伴们查看预览的,但是服务器有其他几个项目在运行,无法暂停,内存空间已经不足以起起来该项目了,因此小伙伴们只能看一下下面的截图了,本文结尾会有部署教程,部署到本地也可以查看完整效果。(如有需要:公众号 中 加群  联系我)

前言
整个项目功能比较多,也比较复杂,因此分多期开发,目前基本功能已经全部做完,部分功能有待优化,其他模块还在规划当中。考虑到目前功能已经可以使用,同时里面的权限管理,菜单管理,用户管理,可以用于任何需求的项目中,权限管理又是许多同学的痛点,因此将本项目提前开源供小伙伴们研究。

提供App端接口已经完成,app端的开发进行中。。。

需要注意的是,因为考虑到用户权限模板是一个很独立的模板,所以单独分离出来,作为一个项目库来使用,所以有两个项目包,其中 system-core-college 作为库文件引入到 onepoint_college中使用。

有需要的小伙伴可以拿来直接学习和使用,有任何问题可以查看说明。

那么适合什么人群使用和学习呢?

Java初学者,这个是一个很好的学习框架,让你学会整体流程
Java有一定经验(大牛除外),但是之前做的工作一直是打下手,这个框架就比较适合了,可以让自己对框架更深的了解,也可以一直升级和优化
大学生,还没有毕业就想了解一下Java 和通过一个项目更深入的了解Java的神奇,跑起来该项目,一定很有成就感。
其他语言转Java语言的,直接拿来使用就好
另外,本项目也在不断的更新中,小伙伴们可以通过关注公众号   程序职场  了解最新更新记录查看最新完成的功能。

邀请函
该项目还有一些功能需要完善,新的需求也在规划中,欢迎小伙伴们提出来好的建议,我会作为框架的升级项,会将大家所提的好建议展示在README中!

整体效果
1、系统菜单

(1)首先,不同的用户在登录成功之后,根据不同的角色,配置不同的菜单项,会看到不同的系统菜单,完整菜单如下:

不同用户登录之后,看到的菜单项不同。

2、用户管理

(1)展示后台管理员信息,可以新增,删除,编辑 管理员信息,对不需要的用户可以:禁用,还可以做:启用,重置密码操作等

新增后台管理员用户,可以选择不同权限级别:超级管理员,一级管理员,二级管理员

编辑管理员信息

3、数据编辑

(1)用于维护项目中 固定数据 的展示和编辑,可以通过头部菜单:新增,编辑,删除

4、版本升级

(1)为app端开发的 android端 版本的升级 ,可以新增,编辑和删除

5、权限管理

(1)配置用户级别权限,可以给不同级别权限用户配置不同菜单,目前有:超级管理员,一级管理员,二级管理员

6、菜单管理

(1)产品的项目菜单数据管理,可以根据不同项目的需求 新增,删除,编辑等

7、知识类型

(1)app端的课程资源分类,目前规定四个主分类,知识课件,知识路径,精品系列知识,热门知识。可以新增,删除,编辑

8、知识课件

(1)课程知识的知识课件分类,可以新增,编辑,删除 分类,同时可以添加子课时

9、知识路径

(1)课程知识的知识路径分类,可以新增,编辑,删除 分类,同时可以添加子课时

10、精品系列知识

(1)课程知识的精品系列知识分类,可以新增,编辑,删除 分类,同时可以添加子课时

11、热门知识

(1)课程知识的热门知识分类,可以新增,编辑,删除 分类

12、精选课程

(1)精选课程是最专业和最具代表意义的课程资源,可以添加子课时,功能包括,新增,删除,编辑。

13、消息动态

(1)展示系统发布的一些系统消息,或者资源新增和变更消息等,用户app端展示,功能包括,新增,删除,修改。

14、首页动态

(1)展示系统发布的一些系统消息,或者推荐视频,最好视频资源等,用户app端展示,功能包括,新增,删除,修改。

15、意见反馈

(1)用来收集客户在app端使用中遇到的优化意见和反馈帮助意见等等。

技术栈
后端技术栈
1.SpringBoot
2.jpa
3.MySQL

前端技术栈
1.easyui

还有其他一些琐碎的技术就不一一列举了,会以知识点的形式详细讲解。

项目部署
1.下项目到本地  https://github.com/ProceduralZC/pointZSXY.git

2.数据库脚本放在onepoint_college 项目的src / main / webapp / file目录下,在MySQL中执行数据库脚本或者直接导入即可

3.数据库配置在onepoint_college项目的resources目录下的application.properties文件中

4.在eclipse中运行onepoint_college项目

OK,到这里,服务端就启动成功了,此时我们直接在浏览器地址栏输入http://localhost:8080/onepoint_college/manager/home/login.html

到此时 即可访问该项目,如果要做二次开发,直接在基础上作调整就行,不受任何影响。

注意,注意,注意  对应的前端(app端)还在更新中,后面会陆续 开源 app,小程序,flutter等移动端源码。(记得关注我哦)

文档
文档是对项目开发过程中遇到的一些问题的详细记录,主要是为了帮助没有基础的小伙伴快速理解这个项目。
部分文档 开源关注公众号,查看,后续会逐步更新。

该项目框架虽然已经基本完成,但是,但是,但是,开发中一些问题整理还欠缺,迫不及待的想要分享给大家,提前开源给大家使用,如果有疑问  添加公众号    程序职场    进群。

功能更新
 

2019年11月30日 更新内容


手机端接口功能添加 
2019年12月12日 更新 前端手机app 功能代码
手机端项目工程 https://github.com/ProceduralZC/pointZSXY/tree/master/AndroidClient/CommonApp
 

其他资料
关注公众号【程序职场】,专注于 Spring Boot ,微服务,前端APP,副业赚钱,职场规划,运营管理 等,关注后回复 学习资料 ,领取为你精心准备的学习干货!

一个执着的职场程序员

点赞 35
————————————————
版权声明:本文为CSDN博主「程序职场」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jianpengxuexikaifa/article/details/102500303

免责声明:文章转载自《开源一个功能完整的SpringBoot项目框架》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇查看loadrunner运行日志QT之深入理解QThread下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

In-App Purchase Programming Guide----(五) ----Delivering Products

Delivering Products In the final part of the purchase process, your app waits for the App Store to process the payment request, stores information about the purchase for future la...

微信小程序,前端大梦想(三)

微信小程序的事件及生命周期   继续下节课,今天我们还是从四个方面来了解小程序:     ●常用事件和事件冒泡   ●配置   ●app生命周期及app对象的使用   ●页面的生命周期   一、事件的绑定:   事件一方面可以理解成用户的行为,当用户对UI层做了某些操作时,程序可以捕捉到操作的类型。如:点击、长按、移动等。另一方面事件也是一种通讯方式,...

SpringBoot整合JPA简单介绍

一、JPA介绍JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。 Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java EE和Java SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。 API用来操...

C#开源项目大全

更多内容请访问 www.uusystem.com 商业协作和项目管理平台-TeamLab 网络视频会议软件-VMukti 驰骋工作流程引擎-ccflow 【免费】正则表达式测试工具-Regex-Tester Windows-Phone-7-SDK Excel-读写组件-ExcelLibrary .NET集成开发环境-MonoDevelop 电话软交...

库、教程、论文实现,这是一份超全的PyTorch资源列表(Github 2.2K星)

项目地址:https://github.com/bharathgs/Awesome-pytorch-list 列表结构: NLP 与语音处理 计算机视觉 概率/生成库 其他库 教程与示例 论文实现 PyTorch 其他项目 自然语言处理和语音处理 该部分项目涉及语音识别、多说话人语音处理、机器翻译、共指消解、情感分类、词嵌入/表征、语音生成、文本语音转...

Linux常用命令及示例(全)

NO 分类 PS1 命令名 用法及参数 功能注解1 显示目录信息 # ls ls -a 列出当前目录下的所有文件,包括以.头的隐含文件 # ls ls -l或ll 列出当前目录下文件的详细信息 # ls ls -a 显示所有文件,包含隐藏。 # ls ls -al 显示所有文件的详细信息。 2 查看路径 # pwd pwd 查看当前所在目录的绝对路经 3...