我有一些drawpane,用户可以绘制不同类型的Shapes,如Pathes,Rectangles,Texts等。现在我想保留DrawState,以便我可以随时重新创建它。 / p>
我只是尝试使用xstream,但是像往常一样,当在XML中持久化时,我会在这些Shapes中获得大量的依赖关系。经过一些研究,我在这里找到了这个主题:
我喜欢jewelsea的想法,使用SceneBuilder API来序列化我的形状,因为它们都受到支持,FXML包含了我可能需要的所有东西而没有任何令人不安的参考。
您对使用Scenebuilder API有什么经验吗?在它指出的线程中,可能很难只获得所需的东西。或者你可以推荐任何其他方式来序列化XML格式吗?
答案 0 :(得分:3)
这可能有点晚了,但如果您使用XStream,请注意我们共享了一组转换器for JavaFX类型:请参阅https://github.com/dooApp/XStreamFX
答案 1 :(得分:1)
使用注释来描述要保存的数据,JAXB可以非常简单地将对象保存到XML或从XML加载对象。
您可能希望为每个JavaFX对象创建模板对象,以便控制要存储的数据。这是一个tutorial on using JAXB.