开发指南专题六:JEECG微云快速开发平台代码生成
? 開發指南專題六:JEECG微云快速開發平臺代碼生
?
1.1.?代碼生成掃描路徑配置
用代碼生成器生成代碼后,需要進行相關配置配置,掃描注入control、service、entity等;
?
詳細操作步驟如下:
1.?control掃描配置,在spring-mvc.xml文件里面
?2.?Service掃描路徑配置,?spring-mvc-hibernate.xml
?3.?實體Entity掃描路徑配置,?spring-mvc-hibernate.xml
?
1.2.?功能測試
1.2.1.?添加菜單并授權
重新啟動Tomcat,進入系統主界面->系統管理->菜單管理,點擊菜單錄入,添加員工管理菜單,如圖44所示。
菜單地址內容為:類映射名.do?方法名,如personController.do?person
?
菜單添加完成之后,需要將該菜單分配給管理員角色,重新登錄系統后,可以在系統管理模塊下看到子菜單【員工管理】,如圖45所示。
?
?
?
1.2.3.?功能測試
點擊菜單項【員工管理】,打開員工管理的主界面如圖46所示。
點擊【錄入】按鈕,在彈出的對話框中錄入員工基本信息,如圖47所示
?
點擊確定按鈕,對信息進行保存,此時可以在用戶列表中看到新錄入的信息,同時在數據庫中也可以看到數據被保存入庫,如圖48所示。
?
?
1.3.?代碼生成器使用規則
1.3.1.?建表規范
?
1.?表必須有唯一主鍵:?ID(字符類型?32位)
備注:?主鍵采用UUID方式生成
主鍵支持自定義,修改jeecg_config.properties的參數[jeecg_generate_table_id]即可;
2.?如需使用框架自動生成表創建人,創建時間等,必須字段參見“表4?2建表模板”
?
3.?表字段必須有注釋
備注:?JSP頁面字段文本,是根據表字段注釋來生成
注:請按照建表模板表42來創建新表,模板表中原有的字段,生成器會過濾不在頁面生成。
?
| 字段名 | 類型 | 長度 | 備注 | 主鍵 |
| ID | varchar | 36 | 主鍵 | TURE |
| CREATE_BY | varchar | 36 | 創建人 | ? |
| CREATE_NAME | varchar | 32 | 創建人名字 | ? |
| CREATE_DATE | datetime | 0 | 創建時間 | ? |
| UPDATE_BY | varchar | 36 | 修改人 | ? |
| UPDATE_NAME | varchar | 32 | 修改人名字 | ? |
| UPDATE_DATE | datetime | 0 | 修改時間 | ? |
| DELFLAG | int | 2 | 刪除標記 | ? |
| DEL_DATE | datetime | 0 | 刪除時間 | ? |
1.3.2.?頁面生成規則
說明:JSP頁面字段的文本內容,取表字段的注釋前6位字符(如果建表字段注釋為空,則頁面字段文本會為空)
A.默認生成的JSP頁面前五個字段為必須項,其他字段為非必須輸入(需要自己手工加)
B.數據庫字段類型為:datetime?-->對應頁面字段,會自動追加[年月日-時分秒]時間控件
C.數據庫字段類型為:date?-->對應頁面會字段,自動追加[年月日]時間控件
D.數據庫字段類型為:Int/Number-->對應頁面字段,會自動追加數字校驗(不允許輸入小數)
E.數據庫字段類型為:float/double/decimal-->對應頁面頁面字段,會自動追加數字校驗(允許輸入小數)
F.如果表字段為字符類型,并且設置了長度,頁面輸入框會自動設置maxlength對應表字段長度
1.4.?一對多的代碼生成
1.4.1.?一對多代碼生成器使用
單表的代碼生成器入口類是test.JeecgOneGUI;一對多的代碼生成器入口類是test.JeecgOneToMainUtil。
一對多的代碼生成器使用示例:
?
| //第一步:設置主表 CodeParamEntity?codeParamEntityIn?=?new?CodeParamEntity(); codeParamEntityIn.setTableName("jeecg_order_main");//主表[表名] codeParamEntityIn.setEntityName("Demo4ManyKey");??//主表[實體名] codeParamEntityIn.setEntityPackage("jeecg");??//主表[包名] codeParamEntityIn.setFtlDescription("訂單主數據");??//主表[描述] ? //第二步:設置子表集合 List<SubTableEntity>?subTabParamIn?=?new?ArrayList<SubTableEntity>(); //[1].子表一 SubTableEntity?po?=?new?SubTableEntity(); po.setTableName("jeecg_order_custom");//子表[表名] po.setEntityName("DemoMany4CustomKey");//子表[實體名] po.setEntityPackage("jeecg");???????????//子表[包] po.setFtlDescription("訂單客戶明細");??//子表[描述] po.setForeignKeys(new?String[]{"GORDER_OBID","GO_ORDER_CODE"});//子表[外鍵:與主表關聯外鍵] subTabParamIn.add(po); //[2].子表二 SubTableEntity?po2?=?new?SubTableEntity(); po2.setTableName("jeecg_order_product");????????????????//子表[表名] po2.setEntityName("DemoMany4ProductKey");????????????????????????//子表[實體名] po2.setEntityPackage("jeecg");?????????????????????????????????????????//子表[包] po2.setFtlDescription("訂單產品明細");????????????????????????????????//子表[描述] po2.setForeignKeys(new?String[]{"GORDER_OBID","GO_ORDER_CODE"});//子表[外鍵:與主表關聯外鍵] subTabParamIn.add(po2); codeParamEntityIn.setSubTabParam(subTabParamIn); ? //第三步:一對多(父子表)數據模型,代碼生成 CodeGenerateOneToMany.oneToManyCreate(subTabParamIn,?codeParamEntityIn); |
1.5.?使用規范
1.?目前代碼生成器默認的主鍵生成策略為UUID?
2.?主表和子表的目錄最好保持一致
3.?子表和主表的外鍵規則如下:
a)?主表和子表的外鍵字段名字,必須相同(除主鍵ID外)?
子表引用主表主鍵ID作為外鍵,外鍵字段必須以_ID結尾
?
總結
以上是生活随笔為你收集整理的开发指南专题六:JEECG微云快速开发平台代码生成的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 私有仓库上传
- 下一篇: [微云助手/微小云怎么用]如何设置群组群