类 JavaBuilderController

java.lang.Object
net.sohelp.boot.admin.core.base.BaseController
net.sohelp.boot.dev.web.code.JavaBuilderController

@RestController("dev-code-java-builder") @RequestMapping("/dev/code/java") public class JavaBuilderController extends BaseController
代码生成控制器,用于处理与Java代码自动生成相关的请求。
从以下版本开始:
2024/5/22 14:15
作者:
AaronFung
  • 构造器详细资料

    • JavaBuilderController

      public JavaBuilderController()
  • 方法详细资料

    • batchDelete

      @PostMapping("/batchDelete") @Permission("ADMIN") public ApiResult<String> batchDelete(@RequestBody Map<String,Object> paramMap) throws SQLException, BusiException
      批量删除指定数据源下的多个表对应的配置信息。
      参数:
      paramMap - 请求参数映射,包含以下键值: - datasourceName:数据源名称,默认为"default" - tableNames:要删除的表名列表
      返回:
      删除结果提示字符串
      抛出:
      SQLException - 数据库操作异常
      BusiException - 业务逻辑异常
    • clearAll

      @PostMapping("/clearAll") @Permission("ADMIN") public ApiResult<String> clearAll() throws SQLException
      清空所有已保存的代码生成配置。
      返回:
      操作成功提示信息
      抛出:
      SQLException - 数据库相关异常
    • list

      @GetMapping("/list") @Permission("ADMIN") public ApiResult<Pager<CodeVO>> list(@RequestParam Map<String,Object> paramMap) throws Exception
      获取指定数据源下符合条件的所有数据库表,并分页展示其配置状态。
      参数:
      paramMap - 请求参数映射,包括: - datasourceName:数据源名称(默认"default") - label:过滤条件,匹配表标签或名称 - page:当前页码(从1开始) - limit:每页记录数
      返回:
      分页后的CodeVO对象集合,表示各表的配置情况
      抛出:
      Exception - 可能抛出的各种异常
    • getConfig

      @GetMapping("/getConfig") @Permission("ADMIN") public ApiResult<?> getConfig(@RequestParam String datasourceName, @RequestParam String tableName) throws Exception
      根据给定的数据源和表名加载该表的详细字段配置信息。
      参数:
      datasourceName - 数据源名称
      tableName - 表名
      返回:
      包含表字段配置详情的对象
      抛出:
      Exception - 加载过程中可能发生的各种异常
    • saveConfig

      @PostMapping("/save") @Permission("ADMIN") public ApiResult<EntityVO> saveConfig(@RequestBody com.alibaba.fastjson.JSONObject jsonObject) throws Exception
      将用户编辑的表字段配置信息持久化到系统中。
      参数:
      jsonObject - 配置信息JSON对象,应至少包含name、datasourceName等关键属性
      返回:
      成功保存的消息
      抛出:
      Exception - 在保存过程中可能出现的任意异常
    • preview

      @PostMapping("/preview") public ApiResult<List<Map<String,Object>>> preview(@RequestBody com.alibaba.fastjson.JSONObject body) throws Exception
      构建并预览将要生成的代码目录结构及文件内容。
      参数:
      body - 请求体,需包含schemeName、datasourceName以及tables数组
      返回:
      目录树结构的列表形式,每个节点代表一个待生成的文件
      抛出:
      Exception - 构建过程中的潜在错误
    • build

      @PostMapping("/build") @Permission("ADMIN") public ApiResult<Map<String,Object>> build(@RequestBody Map<String,Object> paramMap) throws Exception
      实际执行代码生成功能,将生成好的代码写入本地磁盘路径。
      参数:
      paramMap - 参数映射,必须包含scheme_name、tables、datasourceName三个字段
      返回:
      生成成功的消息及输出路径
      抛出:
      Exception - 生成过程中遇到的问题
    • download

      @GetMapping("/download") @Permission("ADMIN") public ApiResult<String> download(@RequestParam String id, @RequestParam(required=false) String datasourceName, @RequestParam List<String> tables) throws Exception
      压缩并提供下载已生成的代码包。
      参数:
      id - 方案ID
      datasourceName - 数据源名称
      tables - 要打包的表名列表
      返回:
      返回null,实际通过response流直接输出zip文件供浏览器下载
      抛出:
      Exception - 处理压缩或IO时出现的异常