hwg001-JWeb 后台管理系统开源项目

我要开发同款
匿名用户2021年03月23日
46阅读
开发技术Java
所属分类Web应用开发、后台管理系统(模板)
授权协议Mulan

作品详情

JWeb后台管理系统,基于Springboot、springCloud(Gateway)、Consul(注册中心)、Mybatis开发的后台管理系统,采用分模块的方式便于开发和维护,支持前后台模块分别部署,目前支持的功能有:用户管理、功能菜单管理、角色管理、权限管理、部门管理、字典管理、参数配置、日志和在线用户等,界面简洁美观大方,使用舒适,适合新项目的快速搭建开发。

软件架构

在线演示在线演示地址: https://139.227.254.194:18081/ 用户名:admin密码:123456(注意:请使用较新版本浏览器(支持localstorage,css3等),推荐使用google浏览器。)

部分页面截图1、登录页面

2、首页

 

3、统一用户管理模块

 

4、访问日志

 

5、在线文档(Swagger3) 

项目模块介绍module-root。此模块配置基础公共依赖,以及spring等相关Maven仓库信息,此模块本身不包含代码。module-common。此模块依赖module-root模块,主要提供一些通用的工具类。module-api-gateway。网关模块,此模块依赖module-root模块,基于springCloud中的Gateway实现,主要完成路由、统一鉴权和日志记录。module-uums。统一用户管理模块,此模块依赖module-root模块,实现用户、角色、部门、权限、参数配置、字典等功能。另外注册中心使用Consul实现,module-uums模块注册到注册中心,module-api-gateway模块从注册中心发现服务。开发环境搭建本项目使用Eclipse作为开发工具基于springboot、Maven构建的微服务项目,具体环境和下载如下:

JDK。安装JDK8及以上版本,JDK8下载路径:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html。Mysql。Mysql下载路径:https://dev.mysql.com/downloads/mysql/,建议安装Mysql5.5以上。IDE。本项目使用Eclipse作为开发工具,下载路径:https://www.eclipse.org/downloads/,比较新版本的Eclipse一般都自带了SVN,GIT、Maven等插件,如果没有可以自己安装。Consul。Consul下载地址:https://www.consul.io/downloads,本项目使用的是1.9.4版本,下载最新版本安装即可。Navicat。数据库管理工具,根据自己的喜好,可以使用其他数控管理工具,下载地址:https://www.navicat.com.cn/products创建数据库和表结构,初始化数据。创建一个数据库,本项目中数据库名为:module-uums,创建好数据库后,下载sql.sql脚本,执行脚本创建表结构和初始化数据。(注意:查看定时策略是否开启:showvariableslike'%event_sche%',若未开启执行setglobalevent_scheduler=1开启)Eclipse安装好后,要把JDK环境配置好,相关文章网上都很多的,基本上不会有问题。都安装好后,启动Mysql和Consul服务,使用默认端口即可。克隆项目源代码到本地解压,使用Eclipse导入module-root、module-common、module-api-gateway和module-uums四个模块到工程中,这4个模块中,module-root是基础的Maven相关依赖仓库配置模块,module-common是公共的工具类模块,只要运行module-api-gateway和module-uums模块即可。module-api-gateway模块启动类:com.hm.gateway.ApiGatewayApplication,点击运行即可;module-uums模块启动类:com.hm.uums.UUMSApplication,点击运行即可。运行后访问:https://127.0.0.1:8080/如果能正常访问,恭喜你环境搭建OK了!

关于部署Mysql和Consul和开发环境类似安装,而module-common和module-api-gateway模块需要使用Maven编译部署到本地仓库,然后把jar拿到需要部署的服务器上运行即可。当然如果你要使用tomcat,也可以把module-common和module-api-gateway模块打包为相应的war包,部署到tomcat中即可。

关于一些设计想法本项目总体上是比较简单的,看软件架构基本上能总体掌握,这里想聊一聊token。本来一开始想用JWTTOKEN这样的框架来处理token的,但觉得不太符合自己的需要,而且用不上很多功能,故没用。以下是此项目中token的处理:

token的生成和保存:用户登录成功后,后台会生成一个MD5的token,token会被保存到Mysql数据库表中;token超时处理:用户每次调用微服务API都会刷新token的访问时间,在参数配置中有一个参数是设置token超时时间的,默认为30分钟,mysql中设置了一个都是任务,每隔1分钟对token进行检查,如果用户最后访问的时间到目前已经超过了设置的超时时间,则删除token,用户再次访问需要重新登录认证。本项目实现的是基础功能,实际开发中,可能需要根据具体需求搭配不同组件,如缓存数据库(如Redis)、负载均衡、消息队列、熔断处理等,项目本身就比较简单,很方便扩展改造。本人能力有限,大家若发现项目中存在的缺陷或者错误,恳请大家批评指正,谢谢

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论