# blocks-generator **Repository Path**: idler41/blocks-generator ## Basic Information - **Project Name**: blocks-generator - **Description**: 基于模板+插件+配置的代码生成器 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-16 - **Last Updated**: 2025-11-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 需求列表 1. 分库分表按逻辑表处理 2. 扫描表策略(include:只扫描xx表、exclude:除xx之外所有表) 3. 路径与文件名支持动态设置(占位符解析) 4. 模板生成文件时支持配置上下文(一些java文件需要的依赖类) 5. 支持属性过滤 6. 支持插件机制,对各重要模块进行扩展 ## 处理流程 1. 根据扫描表策略,获取schema对应元数据(map结构,key为schema+逻辑表名) - 可自动扫描多个schema 2. 根据元数据建立模型(列名/备注、jdbc类型、java类型、java引用) - 列如果有过滤,java引用需要自动重新计算 - 自动标注主键列(联合主键与单列主键分开处理) - 提供插件将元数据存储到数据库 3. 模板可动态添加减少、生成文件根据配置可加入全局上下文,方便模板引用 4. 所有步骤可扩展 数据库jdbc元数据 => 模型 => 插件链 => 模板(模型加工) ## 插件机制 1. 插件来源可以为url、网络,后期可在线编译加载 2. 持久化插件作为后续在线生成代码提供可能 URLClassLoader ## 上下文 1个表对应N个模板 1. 全局上下文