我發現JPA元模型生成器功能對於避免列名更改時的錯誤非常有用。如果有一些更通用的元模型生成工具,您可以指向任何可生成類似元模型類的類(或多個包),那將非常酷。這可以被用來創建編譯錯誤,而不是運行時的人,當事情發生變化:任何老班級的元模型生成器?
public class SomeClass {
public int somePublicProperty;
public String someStringMethod() {
..
}
}
這可能會創建一個元模型類,如:
public class SomeClass_ {
public static final FieldAttribute<SomeClass,Integer> somePublicProperty;
public static final MethodAttribute<SomeClass,String> somePublicMethod;
}
其中FieldAttribute和MethodAttribute有有用的屬性樣的方法來協助反映電話(即刪除需要裸露的字符串):
Object someClassInstance = ...
Integer value = SomeClass_.somePublicProperty.get(someClassInstance);
// rather than
Integer value = someClassInstance.getClass().getDeclaredField("somePublicProperty").get(someClassInstance);
有沒有類似這樣的東西可用?現在我們可以做方法引用,但現在有一些Java 8的支持,但是如果存在的話,我想要更多的元模型。
Eclipse Dali會在編輯實體時動態生成相應的JPA元模型類。 –
嗨布萊恩 - 我看着達利,它似乎只適用於JPA類。我追求的是一個通用的元模型生成器,它可以應用於* any類,而不僅僅是JPA @Entities。 – fancyplants
啊 - 我顯然沒有仔細閱讀。對於那個很抱歉。 –