当前位置:首页 > 技术文章 > 正文内容

jeecg-boot学习总结及使用心得

arlanguage1个月前 (03-28)技术文章33

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为二次开发基础,适合用户。

a.全栈开发人员(适合Java程序员转全栈);

b.团队有前后端开发人员,但是缺少架构能力;

c.前端程序员有node、vue基础转全栈(*太难了*)

jeecg-boot 项目中的部分实现细节 (自己记录,待后续用)

1. 引入了swagger,另外用了增强UI的组件swagger-bootstrap-ui,使文档更友好一点儿。另外api接口统一使用token 安全认证,swagger支持在header中设置token。

#swagger.html#

2.统一的重复记录校验接口 , 传入表名 , 字段值,字段名 ,ID。
org.jeecg.modules.system.controller.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

*

该类型可以通过自己注册自动填充插件进行填充

*/

INPUT(2),

/* 以下3种类型、只有当插入对象ID 为空,才自动填充。 */

/**

* 全局唯一ID (idWorker)

*/

ID_WORKER(3),

/**

* 全局唯一ID (UUID)

*/

UUID(4),

/**

* 字符串全局唯一ID (idWorker 的字符串表示)

*/

ID_WORKER_STR(5);


5.mybaits plus 简化sql编写, (动态sql生成
com.baomidou.mybatisplus.core.mapper.BaseMapper,基类service
com.baomidou.mybatisplus.extension.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前端以拦截器(
service.interceptors.request.use)为所有请求作出统一的异常响应,500登录过期,重新跳到登录;403拒绝访问



8.ant-design-vue-jeecg/src/permission.js 根据是否存在Vue.ls.get(ACCESS_TOKEN),判断是否登录,未登录跳转到登录;未登录时,允许进入登录等白名单路由;动态生成路由表


9.前端保存ACCESS_TOKEN到local-storage,store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN))


10.ant-design-vue 常用标签。

改进建议

1.启动脚本区分环境

前端项目运行,在启动脚本指定环境,可以一次编译,在不同环境中(dev、sit 、prod)运行,便于环境切换。

————————————————

版权声明:本文为CSDN博主「softone220」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:
https://blog.csdn.net/luojian220/article/details/103541505

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/3650.html

分享给朋友:

“jeecg-boot学习总结及使用心得” 的相关文章

Nginx日志切割方法(包含docker容器中nginx日志的切割)

logrotate软件简介logrotate 是一个 Bash 的 SHELL 脚本,可对日志文件进行切分,并将切分后的日志放在统一目录。logrotate 要求 GNU bash、GNU gzip 和 GNU date。logrotate 实用程序旨在简化在生成大量日志文件的系统上对日志文件的管理...

Nginx高级篇:从原理到实战,彻底搞懂Nginx

推荐阅读:2020年后想跳槽?MQ、ZK、Nginx、Kafk等分布式技术你都掌握了?手撕分布式技术:限流、通讯、缓存,全部一锅端走送给你惨败阿里,洒泪复习25天,我还能抓住2019的小尾巴上岸网易?微服务架构之春招总结:SpringCloud、Docker、Dubbo与SpringBoot通过配置...

如何在 CentOS 8 上安装 Nginx centos8.0安装教程

如何在 CentOS 8 上安装 NginxNginx发音为“ engine x”,是一种开源的高性能HTTP和反向代理服务器,负责处理Internet上一些最大站点的负载。它可用作HTTP和非HTTP服务器的独立Web服务器,负载平衡器,内容缓存和反向代理。与Apache[1]相比,Nginx可以...

PHP nginx配置 配置nginx支持php

在配置 PHP 和 nginx 以运行 PHP 应用程序时,您需要进行以下步骤:安装 nginx 和 PHP:如果您的系统上尚未安装 nginx 和 PHP,请根据您的操作系统的说明来安装它们。配置 nginx:您需要为 PHP 应用程序创建 nginx 服务器配置。您可以使用以下代码作为模板:ph...

Nginx配置七层负载均衡

Nginx 一般用于七层负载均衡,其吞吐量有一定限制。为了提升系统整体吞吐量,会在 DNS 与 Nginx 之间引入接入层,比如使用LVS(软负载均衡器)、F5(硬负载均衡器)做四层负载均衡。整体的请求流转如下图所示,即首先 DNS 解析到 LVS/F5,然后 LVS/F5 转发给 Nginx,再由...

安装Code-server并配置用于多用户的反向代理(Nginx)

1.安装code-servercode-server的项目网址在cdr/code-server.在code-server的README中, 提供了两份部署指南, 一份是用于部署在AWS等云服务的deploy, 另一份则是我们要用的用于部署在本地的quickstart.Guide非常简洁明了, 就三步...