91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

發布時間:2020-07-02 22:51:15 來源:網絡 閱讀:2578 作者:鄭小清 欄目:編程語言

一、前言

最近花了一個月時間完成了一套基于Spring Boot+Vue+Shiro前后端分離的代碼生成器,目前項目代碼已基本完成

止步傳統CRUD,進階代碼優化:

該項目可根據數據庫字段動態生成 controller、mapper、service、html、jsp、vue、php、.py ... 等各種類型代碼,采用 velocity 模板引擎在頁面動態配置生成代碼,前后端動態權限配置,前端權限精確到 按鈕 級別,后端權限精確到 uri 上,QQ授權第三方單用戶登錄...等

基本環境:
  1. JDK 1.8
  2. IDEA 2019.2
  3. Redis 5.0.5
  4. MySQL 5.7
  5. Nginx 1.17.1
  6. Docker 18.09.7
  7. Node.js 10.15.3
    項目使用技術棧:

    前端:Vue + Axios
    后端:Spring Boot 、 MyBatis-Plus
    緩存:Redis
    權限:Shiro
    .......

二、代碼生成器介紹

線上體驗地址: http://www.zhengqing520.com:8100/code-generator/dashboard

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

1、登錄:

測試賬號:test 密碼:123456

由于權限問題 線上開放的權限僅只是代碼生成器那一部分,需要權限控制、系統日志等功能可fork源碼參考~

三方登錄目前暫支持QQ授權登錄,默認權限只有代碼生成器模塊,登錄過后,30分鐘內不進行操作將自動下線,同一賬號在別處登錄將被擠下線,點擊頭像在個人信息中可自行修改賬號、密碼、昵稱
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

2、代碼生成器
① 項目管理

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
新建一個項目后,編輯項目包,這里和我們ide打開一個項目下面的包層次類似,后面生成的代碼也將存放在此樹包目錄下,可以根據自己的需求來靈活配置建包
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

② 初始模板

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
這里可以選擇給自己的項目添加一個初始模板,在項目模板管理處可選擇項目進行一鍵新增生成對應的模板
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
生成規則:根據項目管理中的包名與初始模板中的模板類型名對應上即可生成,不對應的即不會處理~

③ 項目模板管理

列表頁面和初始模板列表頁面類型,不同的是新增時需要選擇項目哦,后面的代碼生成將會依照這里配置的代碼模板動態生成!
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
于是乎,整個代碼生成的精髓就在乎這里自己項目所配置的模板哦,這里也給出了可以參考配置的模板數據

數據源配置信息,要在根據數據庫字段生成一次代碼后才擁有數據可以查看哦,不然會是空數據!

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
ex: ${author} 對應生成 zhengqing
${package.input} 對應生成 com.zhengqing.modules.system.dto.input
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
另外就需要參考 Velocity 模板引擎的基本語法使用了
這里再例出一個小編配置的實體類模板吧

溫馨小提示:在項目的sql中保存有小編代碼生成器項目中配置的項目模板以供參考哦~

package ${package.entity};

#foreach($pkg in ${table.importPackages})
import ${pkg};
#end
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>  ${table.comment} </p>
 *
 * @author: ${author}
 * @date: ${date}
 */
#if(${table.convert})
@Data
@ApiModel(description = "${table.comment}")
@TableName("${table.name}")
#end
#if(${superEntityClass})
public class ${entity} extends ${superEntityClass}#if(${activeRecord})<${entity}>#end {
#elseif(${activeRecord})
public class ${entity} extends Model<${entity}> {
#else
public class ${entity} implements Serializable {
#end

    private static final long serialVersionUID = 1L;

#foreach($field in ${table.fields})
#if(${field.keyFlag})
#set($keyPropertyName=${field.propertyName})
#end
#if("$!field.comment" != "")
    /**
     * ${field.comment}
     */
    @ApiModelProperty(value = "${field.comment}")
#end
#if(${field.keyFlag})
    @TableId(value="${field.name}", type= IdType.AUTO)
#else
    @TableField("${field.name}")
#end
    private ${field.propertyType} ${field.propertyName};
#end

#if(${entityColumnConstant})
#foreach($field in ${table.fields})
    public static final String ${field.name.toUpperCase()} = "${field.name}";

#end
#end
#if(${activeRecord})
    @Override
    protected Serializable pkVal() {
#if(${keyPropertyName})
        return this.${keyPropertyName};
#else
        return this.id;
#end
    }

#end
}
④ 數據庫管理
  1. 連接數據庫
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
    這里便是配置數據庫連接信息了,這里小編給出一個開放的數據庫可供連接測試使用,希望讀者不要亂搞哦
    數據庫連接地址:www.zhengqing520.com:3306 用戶名:hello 密碼:root
    可以在本地連接小編給出的數據庫 在里面新建表然后在頁面配置連接后選擇表測試生成哦~
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
  2. 選擇表
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
  3. 生成代碼或修改遠程數據庫注釋信息,這里為了安全考慮未做新增字段,刪除字段等功能,如有興趣,可fork小編源碼自行修改其功能
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
3、系統管理
① 用戶管理

這里不多說,就是一些基礎信息

② 角色管理
  1. 將指定的角色分配給指定的用戶
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
  2. 分配指定的權限給該角色
    一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器
③ 菜單管理

在這里動態配置后端uri請求權限與前端按鈕權限
一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

④ 系統日志

一套基于SpringBoot+Vue+Shiro 前后端分離 開發的代碼生成器

三、總結

  1. 該代碼生成器,打破傳統的CRUD,避免花費太多時間在重復事情上,將更多時間用于學習晉升
  2. 該項目對于小白來說可學習技術也有很多,比如前后端分離跨域解決三方授權登錄@Validated后端參數校驗簡單的redis緩存處理shiro動態權限配置前端按鈕級別權限控制 等等,后端使用目前企業流行的Spring Boot+MyBatis-Plus技術棧,前端也是較為普遍 學習輕松的vue。對于全棧了解入門也是一個好的demo
  3. 本文目前只是給出項目使用介紹流程,后續若有時間,將會給出其中某些技術棧的案例教程
    案例demo代碼將會存放至:https://gitee.com/zhengqingya/java-workspace
注:實現本代碼生成器參考了網上很多前后端教程,以及小編老大肖哥,在這一個月時間里,白天上班,晚上回家利用空閑時間來碼代碼,其中也是學到了不少東西,現在也分享出來給大家,希望能夠幫助到有需要的小伙伴們~

項目源碼

覺得還可以的話,請給個?

GitHub地址:https://github.com/zhengqingya/code-generator 碼云地址:https://gitee.com/zhengqingya/code-generator
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沾益县| 拉孜县| 兴化市| 维西| 彭水| 屯昌县| 揭西县| 昆山市| 砚山县| 卫辉市| 云林县| 仙桃市| 长寿区| 连云港市| 肇庆市| 萨迦县| 新疆| 廉江市| 宜昌市| 监利县| 利辛县| 潮安县| 蓬安县| 吴川市| 东阿县| 洪洞县| 马公市| 泸定县| 高安市| 二连浩特市| 塔城市| 西林县| 永丰县| 类乌齐县| 华容县| 沧源| 青岛市| 临泽县| 山东省| 贵阳市| 买车|