# AutoCreateTable **Repository Path**: zeyc/auto-create-table ## Basic Information - **Project Name**: AutoCreateTable - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-03-10 - **Last Updated**: 2024-03-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 自动建表工具 和mybatisPlus配合来完成建表工作,通过解析实体的相关属性参数进行建表流程。 ## MybatisAutoCreateTableUtils入口工具类 该类中的main函数就是个demo案例。 ## 核心注解@TableExtend对@TableId和@TableField的增强 ```java /** * 字段或表备注 * * @return */ String comment() default ""; /** * JDBC类型 (该默认值不代表会按照该值生效) * * @return */ JdbcType jdbcType() default JdbcType.UNDEFINED; /** * 指定小数点后保留的位数 * * @return */ int numericScale() default 0; /** * 字段长度 * * @return */ int fieldLength() default 0; /** * 默认值 * * @return */ String defaultValue() default ""; /** * 是否允许为空 * * @return */ boolean isNull() default true; ``` 通过demo案例生成ChildLow实体的表结构。如果@TableName、@TableId、@TableField配置了表名/字段名,则使用该信息,如果没有进行配置,则按照驼峰法命名来转化SnakeCase(eg:属性名为userName,则会转换成user_name),具体相关配置可以参考Demo中的ChildLow实体类。