Online代碼生成
===
**目錄索引:**
- 創建表單并生成表
- 代碼生成器配置
- 代碼生成
- 功能測試
- 一對多和一對一表單代碼生成
- 自定義OL代碼生成器模板
# Online代碼生成
## 1.創建表單并生成表
#### ①點擊左側的表單配置菜單,然后點擊創建表單按鈕創建數據表單,如下圖。

#### ②進入智能表單配置列表,點擊同步數據庫將配置同步到數據庫。

#### ③查看數據庫中生成對應的表。

## 2.代碼生成器配置
代碼生成器兩個配置文件:
| 配置類型 | 參數 |
| -------- | ----- |
| 代碼生成器參數配置| src/main/resources/jeecg/jeecg_config.properties|
| 數據源配置| src/main/resources/jeecg/jeecg_database.properties|
參數配置文件jeecg_config.properties的各參數說明如下表所示:
| 參數| 參數說明| 默認值| 取值|
| -------- | ----- | ---- |----- | ---- |
| source_root_package| Source floders on build path (JAVA文件的根目錄)| src.main.java| |
| webroot_package| WEB應用文件的根目錄(例如:jsp)| src.main.webapp| |
| bussi_package| 業務包(舉例:比如ERP中的一個大的模塊銷售模塊目錄),特點:支持多級目錄例如[com.sys]| com.jeecg| |
| templatepath| 代碼生成器使用的模板文件目錄| jeecg/template| |
| system_encoding| 項目編碼| utf-8| |
| jeecg_generate_table_id| 自定義主鍵命名| id| 目前表主鍵只能命名ID|
| jeecg_ui_search_filed_num| 配置代碼生成器生成的JSP頁面,默認前幾個字段生成查詢條件| 1| |
| jeecg_filed_convert| 數據庫表字段轉換為實體字段是采用原生態,還是采用駝峰寫法轉換| TRUE| true/false|
| ui_filter_fields| 根據過濾器自動在表中生成創建人、創建時間、修改人、修改時間等值(映射的字段參照“表4 2建表模板”)| create_date,create_by.. | 1 |
ui_filter_fields的默認值是: create_date,create_by,create_name,update_date,update_by,update_name
## 3.代碼生成
#### ①選擇要生成的表單,然后點擊代碼生成按鈕

#### ②輸入代碼生成參數

#### ③點擊確定按鈕,開始生成代碼,然后刷新Eclipse工程,可以看到生成的Java和Jsp代碼,如下圖:


## 4.功能測試
添加菜單并授權。

點擊菜單項【人員信息】,打開人員信息的主界面如下圖,

## 5.一對多和一對一表單代碼生成
#### ①創建表單主表的表類型選擇“主表”,如下圖,

#### ②附表的類型選擇“附表”,再勾選“一對多”或者“一對一”,同時在外鍵TAB頁中把外鍵字段對應的主表的關聯字段填上。

#### ③生成代碼時需要選擇主表,然后點擊代碼生成按鈕,如下圖

#### ④輸入代碼生成參數,如下圖,

#### ⑤點擊確定按鈕,開始生成代碼,然后刷新Eclipse工程,可以看到生成的Java和Jsp代碼,如下圖,


## 6.自定義OL代碼生成器模板
- 配置枚舉類:org.jeecgframework.core.enums.OnlineGenerateEnum
模板文件名
注意: 文件名是固定的,模板內容可以自行修改
**規則:**
[1].模板配置文件,采用枚舉類
org.jeecgframework.core.enums.OnlineGenerateEnum
[2].模板類型分 system\ext
system : 老模式,不建議采用
ext : 自定義代碼生成器模式,建議用
[3]. Ext 自定義代碼生成器模板配置參數說明
ONLINE_TABLE_SINGLE("table.single","TABLE風格表單","single","ext")
| 模板類型 | 參數類型 | 前綴路徑 |
| -------- | ----- | ---- |
| table.single| 自定義代碼生成器路徑| 標準前綴路徑:src/main/resources/jeecg/ext-template/,table.single} ==> table/single,逗號替換成斜杠|
| TABLE風格表單| 自定義代碼生成器模板名字| |
| ext| 類型(固定)| | |
[4].自定義模板,文件名必須保持一致,參考下圖

- 總體介紹
- 快速了解
- 平臺優勢
- 技術支持
- 社區榮譽
- 開發環境準備
- JEECG私服Maven
- 代碼結構說明
- 入門開發環境搭建
- 開發工具
- 代碼生成器使用
- GUI代碼生成器
- Online代碼生成器
- P3插件代碼生成器
- 代碼生成器配置
- 功能介紹
- 權限開發手冊
- Online開發權限
- Online表單訪問規則
- 列表按鈕權限控制
- 列表數據權限控制
- 頁面表單權限控制(一對多表)
- 頁面表單權限控制(單表)
- 其他
- 二級管理員手冊
- 接口權限配置
- 平臺權限設計總覽
- 編碼開發方式
- 列表按鈕權限用法
- 列表數據權限用法
- 數據權限自定義SQL
- 表單權限用法
- UI標簽庫文檔
- AuthFilter(頁面權限標簽)
- Autocomplete(自動補全標簽)
- BaseTag(樣式和JS引入標簽)
- Choose(彈出選擇標簽)
- ComboTree(下拉樹形選擇框)
- Datagrid(數據列表標簽)
- DepartSelectTag(部門樹選擇標簽)
- DictSelect(數據字典下拉選擇框)
- FormValidation(表單提交及驗證標簽)
- HasPermissionTag(頁面權限標簽)
- Menu(左側菜單生成標簽)
- MutiLang(國際化標簽)
- OrgSelectTag(部門樹列表選擇標簽)
- SelectZTree(Ztree樹控件)
- Tabs(選項卡父標簽)
- TreeSelectTag樹分類標簽
- Upload(上傳標簽)
- UserSelectTag(用戶選擇標簽)
- WebUploader(上傳標簽)
- 查詢構造器
- 查詢過濾器
- 高級查詢構造器
- 專題功能介紹
- 國際化使用
- 多數據源使用
- 定時任務
- 平臺JWT接口文檔
- 消息中心
- Online在線開發
- Online二次開發
- Online代碼生成
- Online唯一性校驗配置
- Online查詢機制(數據權限)
- Online樹形表單配置
- Online表單填值規則
- Online表單對外接口
- Online表單控件
- Online表單配置
- Online表單高級應用
- Online報表開發
- Online圖形報表配置
- Online數據報表配置
- Online移動報表配置
- 自定義表單設計
- 自定義表單權限
- 列表空間權限控制
- 功能介紹
- 常規控件權限控制
- 自定義表單配置
- 自定義表單二次開發
- 自定義表單控件
- 自定義表單數據源
- 自定義表單模板
- 自定義表單配置
- 自定義表單高級應用
- 表單數據維護
- 附錄小技巧
- datagrid擴展屬性用法
- Formvalid新增屬性tiptype的使用
- JEECG單點集成文檔
- Jeecg定時任務開發
- JEECG常見問題貼
- Redis與Ehcache切換文檔
- Toolbar自定義js參數規則
- UI標簽規則
- 列表多表頭的設計
- 列表拓展字段展示
- 列表自定義查詢條件
- 員工入職開發規范文檔V1.0
- 數據列表合計功能
- 登錄權限攔截器排除方法
- 組織機構導入功能使用說明
- 表單字段重復校驗方法
- JEECG新技術
- 新版UI技術方案