以後在考慮新的項目數據持久化問題的時候,要考慮到所用的數據庫類型,避免出現目前遇到過的一站雲化項目、綜合訂單oracle轉mysql問題。 怎麼避免,並不讓這類問題出現?
答:不管是oracle轉myslq,還是mysql轉oracle,或是SQL Server這三大關係型數據庫的互相轉化,都要先考慮到項目中用到數據庫的特有函數和字段,在做持久化實現的時候,把除標準SQL外的函數( to_date、currDate()等 )、特性 (sequence\rownum等) 從業務中剝離出來,在實踐種總結了兩種方式:
1.變成接口(改變實現類,有數據庫遷移的時候更換實現類)
2.變成公共類(uitl,這樣有變更時只需要改變一處util就可以對全局做支撐)。
這樣再做數據庫遷移時候就會省很多時間,程序才更加健壯。