classassist第三方包 class 修改工具
classassist
一款幫助修改第三方包中 class 的工具,只需添加一個注解和實現(xiàn)一個接口即可,降低用戶對 javassist 的使用成本
項目起源 : mybatis-plus 3.4.+ 版本中 sqlserver 分頁查詢必須帶上 order by 條件
本人在公司負(fù)責(zé)框架升級,為了解決 mp 某個版本邏輯刪除處的 bug,升級 3.4.+ 版本,發(fā)現(xiàn)分頁報錯
github 上查詢后得知需帶上 order by 條件, 但是公司現(xiàn)有業(yè)務(wù)系統(tǒng)很多查詢并沒有帶上此條件,因為推廣升級阻力很大,由此產(chǎn)生該項目。
原理是借助 javassist 修改 mp 中 sqlserver 對應(yīng)的分頁邏輯 class 中的字節(jié)碼
經(jīng)過拓展現(xiàn)在可以修改任意class,如 某些歷史遺留代碼已經(jīng)被很多業(yè)務(wù)系統(tǒng)引用,此時業(yè)務(wù)系統(tǒng)肯定是不愿意配合升級,可以使用該項目將里面的邏輯替換為最新的邏輯,實現(xiàn)無縫升級
評論
圖片
表情
