我有一个API允许第三方通过代表我的java域的XML文件与我的数据库进行交互。我使用JAXB来定义xsd以及我的POJO和XML之间的编组/非编组。JAXB,关系的自定义编组
我面对的问题是如何支持相当于休眠延迟加载。即在一定条件下递归地编组对象。我想到的情况就像RequestFactory使用的是.with(...),用户可以准确指定要返回的对象图的哪个部分。
考虑“人”在另一个表中具有“图像”的情况。当使用API并请求一个“Person”时,我希望能够指定.with(Image)或其他类似的东西,否则每个用例都会受到惩罚,不得不携带这个图像,而不需要(a)
(b )有一个不必要的数据库命中。
我有100多个表,排列太复杂,无法编写专门的POJO。
如何使用JAXB或任何其他免费库满足上述要求。
为什么不使用继承。您可以创建Person对象,并且PersonWithmage扩展Person。虽然Parent没有要求,但孩子可能需要额外的字段。 –
如果仅仅是10个左右的情况,我会这么做,但是满足任何可能的第三方需求的排列数量是不可管理的。 – user2046211
您可以通过一些反射来实现,实现一个with()方法(每个可序列化到xml对象使用的接口),通过反射来解析对象,以匹配传递给()的参数/映射并最终返回给定对象的成员通过映射 –