将GXT 2.x迁移到GXT 3.x.怎么处理这些模型?

时间:2013-04-04 22:29:41

标签: java gwt migration gxt

我现在正在将应用程序从GXT 2迁移到GXT 3。

两者之间的主要区别之一是GXT 3.x允许在小部件中使用POJO,而GXT 2.x小部件需要实现ModelData的对象。

问题在于我不能简单地抛弃所有ModelData对象并使用POJO,因为ModelData对象包含许多其他属性,这些属性仅与GUI相关。
因此,这些属性不能放置到POJO(真实的应用程序模型)。

最有可能的是,我将最终构建自己的ModelData接口和一组要在窗口小部件中使用的对象。这看起来有点难看,非GXT3风格。

有没有其他方法可以解决这样的问题?或者也许有人已经面对过它?任何建议都非常感谢。

2 个答案:

答案 0 :(得分:0)

与Chris Phillipson的建议类似,您可以使用客户端变体为POJO创建子类,以添加其他字段,例如:你有一个名为MyPojo的课程:

class MyPojo {
    private String name;
    private String address;
    ...
}

在客户端上你有子类:

class MyClientPojo extends MyPojo {
     private String additionalInfo;
     ...
}

答案 1 :(得分:0)

我的建议是创建一个自己的YourModelData类来包装YourModel类并添加显示所需的其他属性(我建议不要为此目的进行子类化,因为ModelData 没有YourModel,只有 一个)。没有什么可以阻止你使用ModelData,但你不再需要。