SpringBoot +ヴュー+シロ前後両端に基づいて別々のコード・ジェネレータを開発します

I.はじめに

最近、私は前のセットに基づいてコードジェネレータの分離の終わりを完了するために、月を過ごし、春ブーツ+のVue +史郎た後、現在のプロジェクトは、基本的には、コードを完了しました

伝統的なCRUD、高度なコードの最適化を停止します。

項目は、動的にデータベースのフィールドに基づいて生成することができる制御装置、マッパー、サービス、HTML、 JSP、VUE、PHP、の.py ... 用いてコードの他のタイプ、速度、テンプレートエンジン構成ページを動的に生成されたコード、動的権利が配置された前端と後端前へ正確な権限ボタンバックエンドのパーミッションに正確なレベル、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. ドッカー18.09.7
  7. Node.jsの10.15.3

    プロジェクトでは、テクノロジ・スタックを使用しています。

    フロントエンド:ヴュー+ Axiosの
    バックエンド:春ブーツ、MyBatisのプラスの
    キャッシュ:Redisのの
    権限:史郎
    .......

第二に、コードジェネレータの紹介

オンライン体験住所: http://www.zhengqing520.com:8100/code-generator/dashboard

ここに画像を挿入説明

1、ご覧ください。

テストアカウント:テストパスワード:123456

システムログソースのオンラインのみのアクセス許可コードジェネレータは制御のみにアクセスする必要があるオープンな質問、および他の機能の一部が〜フォークを参照することができます

現在、三人の者がQQの不正アクセスをサポートしてありますログイン、のみコードジェネレータモジュールのデフォルトの権限は、ログイン後、30分以内に動作しない組立ラインオフ自動的になります、同じアカウントでのログインは、他の場所で組立ラインをオフにプッシュされます、個人情報に画像自己をクリックしてくださいアカウント、パスワード、ニックネームを変更
ここに画像を挿入説明

図2に示すように、コードジェネレータ

①プロジェクトマネジメント

ここに画像を挿入説明
新建一个项目后,编辑项目包,这里和我们ide打开一个项目下面的包层次类似,后面生成的代码也将存放在此树包目录下,可以根据自己的需求来灵活配置建包
ここに画像を挿入説明

② 初始模板

ここに画像を挿入説明
这里可以选择给自己的项目添加一个初始模板,在项目模板管理处可选择项目进行一键新增生成对应的模板
ここに画像を挿入説明
生成规则:根据项目管理中的包名与初始模板中的模板类型名对应上即可生成,不对应的即不会处理~

③ 项目模板管理

列表页面和初始模板列表页面类型,不同的是新增时需要选择项目哦,后面的代码生成将会依照这里配置的代码模板动态生成!
ここに画像を挿入説明
于是乎,整个代码生成的精髓就在乎这里自己项目所配置的模板哦,这里也给出了可以参考配置的模板数据

数据源配置信息,要在根据数据库字段生成一次代码后才拥有数据可以查看哦,不然会是空数据!

ここに画像を挿入説明
ex: ${author} 对应生成 zhengqing
${package.input} 对应生成 com.zhengqing.modules.system.dto.input
ここに画像を挿入説明
另外就需要参考 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. 连接数据库
    ここに画像を挿入説明
    这里便是配置数据库连接信息了,这里小编给出一个开放的数据库可供连接测试使用,希望读者不要乱搞哦
    数据库连接地址:www.zhengqing520.com:3306 用户名:hello 密码:root
    可以在本地连接小编给出的数据库 在里面新建表然后在页面配置连接后选择表测试生成哦~
    ここに画像を挿入説明
  2. 选择表
    ここに画像を挿入説明
  3. 生成代码或修改远程数据库注释信息,这里为了安全考虑未做新增字段,删除字段等功能,如有兴趣,可fork小编源码自行修改其功能
    ここに画像を挿入説明

3、系统管理

① 用户管理

这里不多说,就是一些基础信息

② 角色管理
  1. 指定された役割は、指定されたユーザーに割り当てられています
    ここに画像を挿入説明
  2. 指定されたロールに割り当てられた権限
    ここに画像を挿入説明
③メニューの管理

この動的構成で許可URI許可を要求するためにフロントエンドボタンと後端
ここに画像を挿入説明

④システムログ

ここに画像を挿入説明

第三に、要約

  1. コードジェネレータは、伝統的なCRUDを破るために、プロモーションを学ぶために、繰り返しものにあまりにも多くの時間を費やすより多くの時間を避けます
  2. プロジェクトはまた、のような白のための技術を、学ぶことがたくさんあることができ前后端分离跨域解决三方授权登录@Validated后端参数校验简单的redis缓存处理shiro动态权限配置前端按钮级别权限控制というように、現在人気のビジネス使用してバックエンドSpring Boot+ MyBatis-Plusテクノロジスタックは、フロントエンドは簡単に学ぶことがより一般的ですvueフルスタックのために始めるのに良いデモです
  3. この記事は現在、唯一のケースにいくつかの技術スタックチュートリアル与えるフォローアップ時間、場合プロジェクトは、プロセスの使用を導入し与えられた
    場合のデモコードはに配置されます。https://gitee.com/zhengqingya/java-workspace
注意:オンラインチュートリアルの多くの終わりの前と後の基準コード・ジェネレータの実装、及び小型シリーズのボス肖哥、時間の今月中に、日中、アイドルタイムコードを利用するために、夜に家に帰るには今も、多くのことを学習されたコードであり、誰もが共有するために、我々は貧しい小さな友人を助けるために望んでいる〜

ソースプロジェクト

あなたはまた私を与える、言葉を考えることができます❤

GitHubの住所:https://github.com/zhengqingya/code-generator
クラウドコード住所:https://gitee.com/zhengqingya/code-generator

おすすめ

転載: blog.51cto.com/14450805/2439791