No Description

cuisongliu a54b114b62 fix bug 8 months ago
gradle a54b114b62 fix bug 8 months ago
src a54b114b62 fix bug 8 months ago
.gitignore e830655bfe commit 11 months ago
LICENSE e830655bfe commit 11 months ago
README.MD 423442a402 1. 删除授权文件 10 months ago
build.gradle eaca41aaea 提交代码生成器 Service部分 11 months ago
settings.gradle e830655bfe commit 11 months ago

README.MD

springboot-guns生成器gradle插件(SBG)

这个插件是依赖与mbg,需要与sbg共同使用. 这个插件拥有了springBootGeneratorPlugin(sbg)的全部功能,这个插件实现在gradle3.3上使用groovy实现.

添加sbg插件到你的项目

buildscript {
   def baseUrl = "http://maven.cuisongliu.com"
   def nexusUrl = "$baseUrl/content/groups/public/"
  repositories {
      mavenLocal()
      maven { url "$nexusUrl" }
   }
  dependencies {
      classpath "com.cuisongliu.plugin:mybatis-generator:0.9.6"
      classpath "com.cuisongliu.plugin:springboot-generator:1.0-SNAPSHOT"
      //需要依赖的框架代码
      classpath "com.cuisongliu.guns:springboot-web:1.0.0-SNAPSHOT"
      //需要依赖的生成的module层代码,为了动态生成字段使用.
      classpath "com.cuisongliu:module:1.0.3"
  }
}
apply plugin: "com.cuisongliu.plugin.mybatis-generator"
apply plugin: "com.cuisongliu.plugin.springboot-generator"

参数配置

import  com.cuisongliu.web.logger.annotion.BussinessLog
import  com.cuisongliu.web.logger.thread.LogObjectHolder
import  com.cuisongliu.web.shiro.support.annotion.Permission
import  com.cuisongliu.core.service.BaseService
import  com.cuisongliu.core.controller.BaseController
sbg{
    skip=false
    overwrite=true

    config{
        bizEnName = "aaa"
    }
    template{
        service{
            enable = true
            module = "service"
            baseService =  BaseService.class
        }

        controller{
            enable = true
            module = "admin"
            baseController = BaseController.class
            extra{
                empty = false
                controllerLog = BussinessLog.class
                compareThreadClass = LogObjectHolder.class
                controllerShiro= Permission.class
                operator ="curd"
            }
        }
        sql{
            enable = true
            menuTable = "sys_menu"
            pCode = "system"
        }
    }
}

sbg参数中 依赖于

  1. mbg.xml.javaProject (有默认值)
  2. mbg.xml.modelPackage(必填)
  3. mbg.xml.objectName (必填)
  4. mbg.xml.mapperMapper(有默认值)
  5. mbg.jdbc.url(必填)
  6. mbg.jdbc.username(必填)
  7. mbg.jdbc.password(必填)

如果没有设置,插件试图智能使用默认值.

主属性 sbg (主配置参数):

属性名 类型 描述 默认值
overwrite Boolean 是否覆盖已经生成的xml或者代码 true
skip Boolean 是否跳过生成代码的sbg的任务 false

sbg 子属性 config (配置生成器主要参数):

属性名 类型 描述 默认值
author String 作者 cuisongliu
authorMail String 作者邮箱 cuisongliu@qq.com
projectPackage String 项目的包 com.cuisongliu
bizChName String 业务名称(中文) 基础模块
bizEnName String 业务英文名称,驼峰命名规则,不能使用base当作名称与基础类会产生冲突. base
moduleName String 模块名称 system

sbg 子属性 template (模版相关参数):

属性名 类型 描述 默认值
templateName String 模版名称,目前只支持guns guns

template 子属性 service (service模版相关参数):

属性名 类型 描述 默认值
enable Boolean service开关 true
module String service对应的相对java模块,相对执行任务的模块,如 service/src/main/java,则填写service即可 ""
baseService Class baseService 基类 null

template 子属性 controller (controller模版相关参数):

属性名 类型 描述 默认值
enable Boolean controller开关 true
module String controller对应的相对java模块,相对执行任务的模块,如 admin/src/main/java,则填写admin即可 ""
baseController Class baseController 基类 null

controller 子属性 extra (controller模版相关额外参数):

属性名 类型 描述 默认值
empty Boolean 是否为空方法,不包含任何增删改查 false
controllerLog Class< ? extends Annotation > 记录日志注解类 null
controllerShiro Class< ? extends Annotation > shiro注解 null
compareThreadClass Class 对象对比线程存放类 null
compareThreadCode String 对比对象的方法使用,强制使用单例调用,只有 extra.compareThreadClass 参数不为空时生效 me().set
operator String 针对数据库的不同操作,目前只支持增删改查(CURD),若不需要某个操作去掉代表字母即可,如去掉删除则为 CUR/cur CURD

template 子属性 html(html模版相关参数):

属性名 类型 描述 默认值
enable Boolean html生成开关 true
templateProject String 模版页面相关所在的目录,默认其加目录前缀即: controler所在的模块的资源目录(src/main/resources) /template

template 子属性 js(js模版相关参数):

属性名 类型 描述 默认值
enable Boolean js生成开关 true
staticProject String 静态文件页面相关所在的目录,默认其加目录前缀即: controler所在的模块的资源目录(src/main/resources) /static

template 子属性 sql(sql模版相关参数):

属性名 类型 描述 默认值
enable Boolean sql生成开关 true
sqlProject String sql生成所在的目录,默认其加目录前缀即: controler所在的模块的资源目录(src/main/resources) /sql
menuTable String 菜单在当前库的表名 menu
pCode String 生成菜单的父节点的code,默认设置为根节点 0
run Boolean 是否执行生成的sql false
commit Boolean 是否执行sql后提交 false

运行sbg任务

  1. 在build.gradle中加入参数配置

  2. 在使用插件之前加入buildscript,配置classpath(需要引入的包)的

  3. 在build.gradle所在目录执行 gradle mbg