1. 程式人生 > >用generator 根據oracle表生成java程式碼,資料庫與程式碼欄位不一致

用generator 根據oracle表生成java程式碼,資料庫與程式碼欄位不一致

前兩天用generator生成java程式碼時發現,生成的javabean和資料庫裡的欄位對應不上,不是少幾個就是有幾個欄位不一樣,感覺很怪異,後來發現日誌裡邊這個錶轉換成bean是日誌列印了好幾遍,所有怪事都是有原因的,我開始研究generator原始碼。

用IDEA跟蹤斷點,查詢對應表的內容,發現,程式碼裡set裡存的表資訊有多個,表名是同一例項下的其他資料庫,因為是本地的資料庫,有多個類似的使用者,所以generator掃描了該例項下所有的表,然後表名相同的就都匯出了bean。從網上找了些資料,在generator配置檔案中,table節點下新增屬性schema,對應資料庫使用者名稱,匯出後就只有改資料庫下的表了,只不過在配置的匯出java檔案的地址下又添加了一級目錄,就是對應資料庫使用者名稱。

<table schema="DCMSYA_LIVE" tableName="DCM_BMS_DICTORYDETAIL"
               domainObjectName="DictoryDetail1" enableCountByExample="false" 
               enableUpdateByExample="false" enableDeleteByExample="false"
               enableSelectByExample="false" selectByExampleQueryId="false"></table>