缘起

项目中有CRUD的单表操作,有时候还很多,趁着项目不忙的时候,用最笨的一行行写入文件的方式,撸了个代码生成器的公司项目中尽量使用JPA的操作,遇到JPA需要扩展的操作呢,能不写SQL尽量不写SQL,优先选择使用扩展JpaSpecificationExecutor来进行的数据库操作,此脚本符合我们团队的需求,不一定符合大家需求。

成果

在指定包路径下,自动生成 entity、controller、repository、service包,包内生成代码类。

代码

  • 数据库元数据描述类
package com.sogdata.ideology.generate;

import lombok.Builder;
import lombok.Data;

/**
 * summary: 数据库元数据描述
 *
 * @author : Ray
 */
@Data
@Builder
public class ColumnInfo {
    private String name;
    private String type;
    private String comment;
    private Boolean isNullable;
    private Integer size;
}

  • 记录路径的类
package com.sogdata.ideology.generate;

import lombok.Builder;
import lombok.Data;

/**
 * summary:记录自动生成的代码的文件路径和包路径
 *
 * @author : Ray
 */
@Data
@Builder
public class JavaFilePath {
    /**
     * 文件路径 绝对路径
     */
    private String filePath;
    /**
     * 类路径
     */
    private String classPath;
}

  • 代码生成类
    详见 代码生成工具包

更多推荐

JPA JAVA代码生成器(entity ,controller ,service ,repository)