我正在使用resty-gwt库,想知道是否可以动态使用JsonEncoderDecoder接口?
例如:我有一个pojo,如下:
@JsonTypeInfo(use=Id.CLASS, include=As.PROPERTY, property="class")
public class MyObject {....}使用响应中返回的类名:是否可以使用生成器生成接口
public interface MyObjectCodec extends JsonEncoderDecoder<MyObject > {}并以某种方式调用GWT.create(MyObjectCodec.class),以便我可以解码对象?
发布于 2013-06-04 19:58:22
即使我没试过,我也相信你能做到。
从restyGWT.gwt.xml中提取
<generate-with class="org.fusesource.restygwt.rebind.RestServiceGenerator">
<when-type-assignable class="org.fusesource.restygwt.client.RestService" />
</generate-with>
<generate-with class="org.fusesource.restygwt.rebind.JsonEncoderDecoderGenerator">
<when-type-assignable class="org.fusesource.restygwt.client.JsonEncoderDecoder" />
</generate-with>
<generate-with class="org.fusesource.restygwt.rebind.DirectRestServiceGenerator">
<when-type-assignable class="org.fusesource.restygwt.client.DirectRestService" />
</generate-with>因此,如果您正在编写JsonEncoderDecoder,生成器应该会为您生成代码。
您应该能够使用JSONValue encode(T value)方法在JSONValue中对对象进行编码
我不知道你所说的动态是什么意思,但我认为它完全是“静态”的,也就是说它实际上并不依赖于运行时变量或其他任何东西。
https://stackoverflow.com/questions/14824641
复制相似问题