2013-02-12 186 views
3

我打算使用jOOQ,我可能需要混淆。混淆和jOOQ

我不知道jOOQ如何在引擎蓋下工作。 混淆過程是否會嚮應用程序提供問題?

+0

您打算混淆什麼?你的數據庫模式和生成的SQL? jOOQ?或者你自己的代碼?或者它們的組合? – 2013-02-13 09:03:21

+0

@Lukas我要混淆應用程序;我不會混淆數據庫和模式本身(我是否正確理解你的問題?)我不會混淆庫(jOOQ)。 – Jako 2013-02-13 11:57:53

回答

2

jOOQ使用反射,內部:

  1. 構建custom POJO objects
  2. Records to POJO objectsvice-versa
  3. 將值分配給調用Oracle ojdbc特異性方法而不產生上ojdbc
  4. 依賴性調用PGobject類型的Postgres JDBC特定方法

在這些區域中,如果更改方法名稱,混淆可能會導致問題

+0

謝謝你的回答!非常感謝。所以我需要從混淆過程中排除jOOQ生成的代碼(我打算使用jOOQ代碼生成功能)。這是對的嗎?我希望(只是一點),jOOQ生成的代碼使用字符串常量,所以混淆將是可能的 – Jako 2013-02-13 12:00:24

+0

我知道這將是你第一個回答我的問題:)我已經試過jOOQ真快,一切工作像一個魅力。我已經喜歡它:) – Jako 2013-02-13 12:02:10

+1

@Jako:感謝您的反饋。我在jOOQ標籤上設置了通知服務... :-)您還可以混淆jOOQ生成的代碼。只要注意jOOQ可能不再能夠將生成的字符串常量(對應的數據庫列名稱)映射到POJO獲取器和設置器。避免這種情況的一種方法是使用JPA批註生成POJO ...然後,方法名稱不再重要 – 2013-02-13 13:02:03