java – 有没有办法在接口引用实现中使用没有JAX-WS注释的Jersey
我喜欢泽西岛,我真的这样做,但我宁愿使用接口作为我的资源的返回类型而不是具体的类.我按照这里的说明操作:
http://jaxb.java.net/guide/Mapping_interfaces.html 它展示了如何使用适配器为实现接口的类注释接口,以便JAXB能够绑定到它们. 从页面: @XmlJavaTypeAdapter(AbstractFooImpl.Adapter.class) interface IFoo { ... } abstract class AbstractFooImpl implements IFoo { ... static class Adapter extends XmlAdapter<AbstractFooImpl,IFoo> { IFoo unmarshal(AbstractFooImpl v) { return v; } AbstractFooImpl marshal(IFoo v) { return (AbstractFooImpl)v; } } } 我不是太疯狂的界面知道什么实现它,这似乎有点难看.我们的代码使用带工厂的DAO模式来抽象出我们正在使用的数据库,因此我们可以在以后需要时交换它.这种周期性依赖似乎会在以后引发问题. 我也不满意无法将这些接口用于我将使用这些Web服务的GWT客户端.由于注释来自javax.xml.bind,因此它与GWT编译器不兼容.我目前的解决方法是带注释的特殊服务端接口. 那么有更好的方法吗?也许使用Provider来实例化类?或者某种类型的Filter可以将接口映射到可以提供实现的某种类型的工厂? 任何帮助,将不胜感激. 谢谢. 解决方法
EclipseLink JAXB (MOXy)提供对映射接口的支持(我是技术主管):
> http://bdoughan.blogspot.com/2010/07/moxy-jaxb-map-interfaces-to-xml.html MOXy可以很容易地与泽西一起使用: > http://bdoughan.blogspot.com/2010/08/creating-restful-web-service-part-35.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- java – IntelliJ:即使源存在,也显示反编译的类反汇编
- 并发 – Erlang – Dining Philosophers错误
- java 三种将list转换为map的方法详解
- 在Java中将String解析为Date时出错
- java – Integer.parseInt()抛出带有UTF-8文件的NumberFo
- 详解spring cloud构建微服务架构的网关(API GateWay)
- Java:如何防止EntityResolver中的’systemId’#resolveEnt
- 写给自己的Java程序员学习路线图
- 是否有一个java等效的python eval函数?
- 如何访问Java中的内存位置?