【发布时间】:2011-10-25 21:21:52
【问题描述】:
我有以下型号
class MyClass {
id
someRandomString
}
我想将此 POJO 作为...返回给客户。
<Root>
<random>if + randomstring</random>
</Root>
基本上,我正在处理一个非常面向消息的服务,因此我需要将模型包装并转换为出站 XML 格式...在输入端也是如此
我有这个 XML...
<Root>
<Username>
<Password>
<Action> <-- Some action or service to perform
<SomeModel1>
<SomeModel2>
</Root>
所以 root 和用户名和密码是常量元素,而 SomeModel 可以根据“服务”改变
基本上,我正在寻找一种设计模式,其中 XML 与模型不匹配,并且需要相互转换......
如果我这样做了会怎样……
class MyClass {
id
someRandomString
random
@XMLTransient
getId()
@XMLTransient
getSomeRandomString()
getRandom() {
return id + someRandomString
}
}
所以 JAXB 只会映射 getRandom...
我的另一个想法是创建一堆代表最终输出的类,并将值设置为那些......
所以
class MyResponse {
randomString
status
someOtherFieldRequired in response
}
然后我可以做...
myResponse.setRandomString(myClass.getId() + myClass.getSomeRandomString());
【问题讨论】:
标签: design-patterns jaxb