代码生成平台Xxl-Code-Generator

《代码生成平台Xxl-Code-Generator》

GitHub release
License
donate

1、简介

1.1 概述

Xxl-Code-Generator 是一个 "controller/service/dao/mybatis/model" 多层的代码生成平台。只须要提供SQL,将会自动生成所有代码。html

1.2 特性

  • 一、简洁:界面操做,简洁直观,可快速上手;
  • 二、轻量级:仅需提供建表SQL,便可自动完成代码生成,简洁高效;
  • 三、多层代码生成:自动生成 "controller/service/dao/mybatis/model" 多层代码,参与到开发全流程;
  • 四、高效:从SQL到API接口,所有代码均支持自动生成,极大提升生产力和效率;
  • 五、在线预览:代码生成后,支持实时在线预览,直接复制使用;

1.3 下载

文档地址

源码仓库地址

源码仓库地址 Release Download
https://github.com/xuxueli/xxl-code-generator Download
https://gitee.com/xuxueli0323/xxl-code-generator Download

技术交流

1.4 环境

  • JDK:1.7+

2、快速入门

第一步:编译项目

项目目录结构以下:前端

- xxl-code-generator
    - xxl-code-generator-core   :代码生成的Core依赖,进行SQL解析等操做;
    - xxl-code-generator-admin  :代码生成平台,使用时,只须要部署该项目便可;

第二步:准备SQL

代码生成,是以数据库表为维度进行生成。因此,须要准备好待生成代码的表SQL脚本。
而后进入代码生成平台,将建表SQL脚本填写到 "表结构信息" 输入框便可。
(默认已经提供了一个供参考Demo表SQL脚本,可操做体验下)vue

输入图片说明

第二步:生成代码

点击右上角 "生成代码按钮",便可完整多层代码的生成,很是方便;java

输入图片说明

第三步:Finish

代码生成后,可在界面查看和使用 "controller/service/dao/mybatis/model" 多层源代码。部分截图以下:react

输入图片说明
输入图片说明
输入图片说明
输入图片说明
输入图片说明
输入图片说明

3、整体设计

设计思想

jquery

ReturnT

统一接口返回数据类型,有利于接口对接与效率提高;所以生成的多层代码交互时,采用统一ReturnT,源码以下:git

import java.io.Serializable;

/**
 * common return
 * @author xuxueli 2015-12-4 16:32:31
 */
public class ReturnT<T> implements Serializable {
    public static final long serialVersionUID = 42L;

    public static final int SUCCESS_CODE = 200;
    public static final int FAIL_CODE = 500;
    public static final ReturnT<String> SUCCESS = new ReturnT<String>(null);
    public static final ReturnT<String> FAIL = new ReturnT<String>(FAIL_CODE, null);
    
    private int code;
    private String msg;
    private T data;
    
    public ReturnT(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }
    public ReturnT(T data) {
        this.code = SUCCESS_CODE;
        this.data = data;
    }
    
    public int getCode() {
        return code;
    }
    public void setCode(int code) {
        this.code = code;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }
    public T getData() {
        return data;
    }
    public void setData(T data) {
        this.data = data;
    }

}

4、版本更新日志

版本 v0.0.1,新特性[2018-05-03]

  • 一、简洁:界面操做,简洁直观,可快速上手;
  • 二、轻量级:仅需提供建表SQL,便可自动完成代码生成,简洁高效;
  • 三、多层代码生成:自动生成 "controller/service/dao/mybatis/model" 多层代码,参与到开发全流程;
  • 四、高效:从SQL到API接口,所有代码均支持自动生成,极大提升生产力和效率;
  • 五、在线预览:代码生成后,支持实时在线预览,直接复制使用;

TODO LIST

  • 一、多模板支持:当前模板为 "SpringMVC + Mybatis + Mysql" 技术栈;计划新增不一样代码生成模板;
  • 二、扩展多层:目前支持生成 "controller/service/dao/mybatis/model" 层代码;计划新增前端代码,如 "jquery、vuejs、react" 等;

5、其余

5.1 项目贡献

欢迎参与项目贡献!好比提交PR修复一个bug,或者新建 Issue 讨论新特性或者变动。github

5.2 用户接入登记

更多接入的公司,欢迎在 登记地址 登记,登记仅仅为了产品推广。sql

5.3 开源协议和版权

产品开源免费,而且将持续提供免费的社区技术支持。我的或企业内部可自由的接入和使用。数据库

  • Licensed under the GNU General Public License (GPL) v3.
  • Copyright (c) 2015-present, xuxueli.

捐赠

不管金额多少都足够表达您这份心意,很是感谢 :) 前往捐赠

相关文章
相关标签/搜索