[英]How to create an alias for a private inner class (using XStream)?
我正在為長類名創建別名...效果很好,但是序列化的類之一是私有內部類。 除了將其公開之外,我無法想到一種為其創建別名的方法。 我不喜歡這種解決方案,因為它首先不應該公開。 但是由於為其創建了別名,因此無需更改XML文件即可更改包和類名(因為第一個標記是完全限定的類名)。
這就是我創建別名的方式:
xstreamInstance.alias("ClassAlias", OuterClass.InnerClassToAlias.class);
這就是為什么我需要公開訪問該內部類。
因此,如果有人知道給私有內部類起別名的技巧,我真的很想聽聽。
您可以創建類似於以下的類,並將對xstreamInstance
的引用xstreamInstance
給alias
方法。
public class Parent {
public void alias(XStream x) {
x.alias("Kiddie", Parent.Child.class);
}
private class Child {
}
}
如何為別名使用注釋?
public class Parent {
@XStreamAlias("kiddie")
private class Child {
}
}
編輯:las,當請求獲取父類的解析時,XStream不支持嵌套類的注釋的解析。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.