# webconsole **Repository Path**: tungsword_cn/webconsole ## Basic Information - **Project Name**: webconsole - **Description**: No description available - **Primary Language**: Java - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-17 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # webconsole #### 介绍 系统管理控台,即管理系统的系统 1.单点登录,用户系统的登录和鉴权 2.权限配置,将所有的系统的菜单、用户、角色统一管理 #### 软件架构 前端框架: 模板引擎:freemarker,中文文档网址:http://freemarker.foofun.cn/ UI:adminlte 后端框架: springboot 2.0 本地缓存:使用Ehcache存储session,若改为redis可以集群部署 ORM框架:mybatis,自动生成mybatis的xml文件 数据库:以mysql5.7为准 #### 后端模块介绍和开发规范 1.application:外部交互口子,如对外的接口,controller层,或者是监听的消费者。该层只能调用biz层的接口。 2.biz:业务处理层,用户处理具体业务,对数据的处理。该层可调用dal,manager层的接口。 3.dal:与数据库交互,存放相关的接口,xml和数据库的实体。 使用Mybatis框架和数据库进行交互,并且使用mybatis逆向工程generatorConfig.xml,自动生成基本的mybaits接口和xml配置文件 4.manager:与外部系统交互。 5.util:用于编写工具组件,如日期,加密等等。 #### 前端模块介绍 1.static:存放静态资源文件,图片、css、js 2.templates:存放网页 2.1.common用于存放共通组件 common.ftl中定义了共通的css、js、头部菜单、侧面菜单、底部内容 layout.ftl中组合和共通的模块。 #### 安装教程 1. 配置数据库,在dal层的DataSouceConfig层配置数据库 2. 运行application层中的WebconsoleApplication.java #### 更新版本 1.登录功能完善 简单介绍:通过cookie,本地缓存ehcache和spring拦截器完成登录功能。 1.登陆时参数check和密码验证,这是基本的操作。 2.根据账号密码到数据库中查询,匹配账号密码。登录失败,返回提示信息。 3.登录成功时,将sessionID作为key,账号信息作为value存储到本地缓存中。将sessionID存储到cookie中。 4.优点: 4.1.当后期web做集群时,可以将本地缓存换成redis作为session缓存 4.2.将用户权限信息存储到缓存中可以减少查询数据库的次数 5.缺点和改进 5.1.账号密码传输时,前端加密,后端解密,保证安全 5.2.若改成前后端分离时,替换cookie,将sessionId存储到每次的请求头中 5.3.引入jwt加密方式