jeecg-boot学习总结及使⽤⼼得
jeecg-boot学习总结及使⽤⼼得
1.jeecg-boot是⼀个真正前后端分离的模版项⽬,便于⼆次开发,使⽤的都是较流⾏的新技术,
后端技术主要有spring-boot2.x、shiro、Mybatis-plus、redis等;
前端项⽬基于node.js、webpack构建,主要技术使⽤Vue、vuex、axios等
2.作为模版项⽬,便于快速⼆次开发。
现成基本功能包括⽤户管理、⾓⾊管理、菜单管理(前端根据⾓⾊动态路由)、部门管理、
数据字典、消息中⼼、定时任务、及各种丰富的各种前端效果⽰例及最重要的**代码⽣成功能**。
3.全栈开发。以本项⽬为基础开启全栈开发,对⼀个想做全栈开发的程序员来说,是个学习基础。
但是真正做到全栈,还是有很⼤的学习成本的。就本⼈来说,做Java程序开发⼯作近6年,最主要是做后端开发, 后端的技术栈涉猎很⼴,但是前端仅限于偶尔写页⾯也是⽤jsp、jquery等。
新流⾏的node.js、vue.js没怎么⽤过。所以学习成本较⼤,最近恶补了vue.js相关基础知识。
实话说,vue的组件、路由、数据双向绑定⽤起来简直不要太爽。后端开发⼈员有精⼒可以学学。
4.jeecg-boot为⼆次开发基础,适合⽤户。springboot推荐算法
a.全栈开发⼈员(适合Java程序员转全栈);
b.团队有前后端开发⼈员,但是缺少架构能⼒;
c.前端程序员有node、vue基础转全栈(*太难了*)
jeecg-boot 项⽬中的部分实现细节(⾃⼰记录,待后续⽤)
1. 引⼊了swagger,另外⽤了增强UI的组件swagger-bootstrap-ui,使⽂档更友好⼀点⼉。另外api接⼝统⼀使⽤token 安全认证,swagger⽀持在header中设置token。
2.统⼀的重复记录校验接⼝ , 传⼊表名 , 字段值,字段名 ,ID。
ller.DuplicateCheckController#doDuplicateCheck
3.登录,shiro认证初始化,后端⽣成token算法(java-jwt) , 前端token存储 (local-storage),
4.主键id 规则 @TableId(type = IdType.ID_WORKER_STR) private String id;
/**
* 数据库ID⾃增
*/
AUTO(0),
/**
* 该类型为未设置主键类型(将跟随全局)
*/
NONE(1),
/**
* ⽤户输⼊ID
* <p>该类型可以通过⾃⼰注册⾃动填充插件进⾏填充</p>
*/
INPUT(2),
/* 以下3种类型、只有当插⼊对象ID 为空,才⾃动填充。 */
/**
* 全局唯⼀ID (idWorker)
*/
ID_WORKER(3),
/**
* 全局唯⼀ID (UUID)
*/
UUID(4),
/**
* 字符串全局唯⼀ID (idWorker 的字符串表⽰)
*/
ID_WORKER_STR(5);
sion.service.impl.ServiceImpl)
6.Spring缓存Cacheable使⽤
@Cacheable(value = CacheConstant.SYS_DICT_CACHE,key = "#code+':'+#key") 放⼊缓存
@Cacheable(cacheNames=CacheConstant.SYS_USERS_CACHE, key="#username")
@CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true) 清除缓存
7.通过后端反馈不同状态码,ant-design-vue-jeecg/src/utils/request.js前端以(quest.use)为所有请求作出统⼀的异常响应,500登录过期,重新跳到登录;403拒绝访问
8.ant-design-vue-jeecg/src/permission.js 根据是否存在(ACCESS_TOKEN),判断是否登录,未登录跳转到登录;未登录时,允许进⼊登录等⽩名单路由;动态⽣成路由表
9.前端保存ACCESS_TOKEN到local-storage,storemit('SET_TOKEN', (ACCESS_TOKEN))
10.ant-design-vue 常⽤标签。<a-table> <a-form> <a-card>
改进建议
1.启动脚本区分环境
前端项⽬运⾏,在启动脚本指定环境,可以⼀次编译,在不同环境中(dev、sit 、prod)运⾏,便于环境切换。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论