任务一:导入并配置Guns框架
下载Demo

导入项目


配置数据库

启动项目


启动成功

任务二:阅读Gans的源码并对每一部分的功能进行介绍
|
包 |
类/接口 |
功能 |
|
cn.stylefeng.guns |
GunsApplication |
SpringBoot方式启动类 |
|
GunsServletInitializer |
Web程序启动类 |
|
|
cn.stylefeng.guns.config |
MapperScanConfiguration |
配置mapper包扫描 |
|
cn.stylefeng.guns.config.web |
SpringMvcConfiguration |
Spring mvc的配置 |
|
cn.stylefeng.guns.core.consts |
ProjectConstants |
项目的常量 |
|
cn.stylefeng.guns.core.error |
CustomErrorAttributes |
将系统管理未知错误异常,输出格式重写为我们熟悉的响应格式 |
|
GlobalExceptionHandler |
全局异常处理器,拦截控制器层的异常 |
|
|
cn.stylefeng.guns.core.exception |
BusinessException |
业务异常 |
|
cn.stylefeng.guns.core.security |
AuthJwtTokenSecurityInterceptor |
鉴权的过滤器,用来鉴权token |
|
PermissionSecurityInterceptor |
权限校验的过滤器,用来校验用户有没有访问接口的权限 |
|
|
cn.stylefeng.guns.core.security.base |
BaseSecurityInterceptor |
基础的Filter,一般用在权限过滤 |
任务三:基于Gans完成一个汽车信息管理系统
初始化数据库

创建菜单

给超级管理员添加权限

编写代码


重新启动项目

可以看到数据库中的数据

测试添加一辆车

添加成功

车辆管理功能添加成功。
三、实验总结
1.一开始导入项目后JAVA文件报错

经过检查,是log报错,log是idea的,而我用的的eclipse,将log,改为了System.out.println();

解决了问题,成功运行了项目。
2.按照实例做车辆管理时,后端有两个文件报错

第一个中添加如下

解决。
第二个在Car.java和CarRequest.java中添加了getter和setter解决了问题。

3.总结
Guns给我的感受就是功能很强大,但是结构比较之前遇到的复杂一些。做这个实验时,导入项目就遇到了很多问题,好在有百度,都解决了。做车辆管理时,官方文档给的挺详细的,虽然也遇到一点小问题,通过eclipse的报错提示啥的也都解决了。