No Description

cuisongliu a54b114b62 fix bug 1 year ago
gradle a54b114b62 fix bug 1 year ago
src a54b114b62 fix bug 1 year ago
.gitignore e830655bfe commit 1 year ago
LICENSE e830655bfe commit 1 year ago
README.MD 423442a402 1. 删除授权文件 1 year ago
build.gradle eaca41aaea 提交代码生成器 Service部分 1 year ago
settings.gradle e830655bfe commit 1 year 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