1.基於JEECG3.5.2,提供多種數據源的代碼生成,目前支持Oracle良好;
2.可動態配置數據源; 可動態配置模板集合,基於freemarker的模板文件; 可選擇需要生成的數據表; 可導入一個java類,根據配置的模板,生成對應的代碼文件;
3.目前的這個擴展,主要解決以下的問題; 動態的選擇一個oracle數據源,選擇一個數據表; 根據配置的模板集合如:dao、entity、service、controller、view、js(其中主要是view、js)生成對應的代碼文件; 這個模板如果不合適可以在線修改,重新生成對應的代碼; 這個主要是單表的一體化生成,如果是多表的話,可以在對應的代碼文件里再修改下;
根據java類來生成代碼,這個就很簡單了,主要是項目中用到的entity-dto的互轉,大部分這兩層代碼都定義的差不多,手工互轉還是 很累的,當然如果完全一樣也可以用反射,不過為了擴展需要和性能需要不建議反射;這里,只需要定義一個互轉的模板,就可以生成需要的代碼;
不可能完全做到生成代碼自動化,完全自動化的話對項目的約定很死,也不符合項目的擴展需要;所以能做到半自動代碼生成就夠了,需要擴展自己改改就行;
相比其他的代碼生成工具,就是在線制定代碼模板;
a、下面這個數據配置表,就是配置數據源,數據源的信息采用json格式;
b.下面這個是模板管理,外面的模板名稱相當於一個模板組,點擊進去可以添加對應的具體模板文件,如圖“iparser項目模板”里建了3個具體的模板文件
下面這個就是模板文件的具體類容,模板文件采用freemarker編寫;
c.下圖就是代碼生成頁面了,首先選擇數據源-》數據表,再選擇代碼模板-》具體的模板,配置包名稱;點擊”代碼生成”
下圖就是最終生成的代碼文件,可以直接復制到項目中,也可以先修改下再復制;
d、java代碼文件的代碼生成,如下圖所示,輸入簡單的java類,選擇模板,“生成代碼”
git源碼:myjeecg