1. 程式人生 > >SpringBoot程式碼生成器,從此不用手擼程式碼

SpringBoot程式碼生成器,從此不用手擼程式碼

![](https://img2020.cnblogs.com/blog/109211/202005/109211-20200522155151292-1442620520.png) ## 前言 通常在開始開發專案的時候,首先會建立好資料庫相關表,然後根據表結構生成 `Controller、Service、DAO、Model`以及一些前端頁面。 如果開發前沒有強制的約束,而每個程式設計師都有自己的編碼習慣,最終會導致一個專案呈現出多種編碼風格。再有就是一些`CRUD`的列表功能,基本是沒啥挑戰性的,純粹苦力活,浪費時間。 所以,根據公司現有框架,開發一款統一風格的程式碼生成器還是很有必要的。 ## 技術選型 開發框架:`SpringBoot+JPA`,考慮到會生成各種前後端程式碼檔案,這裡我們選用`freemarker`模板引擎來製作相應的模板。 ## 實現思路 #### 獲取表結構資訊 首先我們定義一個實體類,為了使用方便,把表和欄位資訊放到了一個類中: ``` /** * 表以及相關欄位資訊 */ @Data public class AppGen extends PageBean implements Serializable { /** * 表名 */ private String tableName; /** * 實體類名 */ private String entityName; /** * 實體類名 首字母小寫 */ private String lowerEntityName; /** * 表備註 */ private String tableComment; /** * 表字首 */ private String prefix; /** * 功能描述 */ private String function; /** * 列名 */ private String columnName; /** * 實體列名 */ private String entityColumnName; /** * 列描述 */ private String columnComment; /** * 型別 */ private String dataType; /** * 自增 */ private Object columnExtra; /** * 長度 */ private Object columnLength; priv