我有一个从CSV文件或数据库导入信息并将其导出到XML的应用程序。此XML当前被保存到文件中。但是,由于项目需要,我决定最好将这个XML持久化到数据库中。
目前,我有CSV、XML和SQL存储库,它们处理导入/导出数据。XML存储库将传入对象保存到文件中。目前,它是存储对象到XML的映射的地方,因此它是唯一了解该结构的地方(同样,它们各自结构的其他存储库)。
既然我想将XML存储在数据库中,我就开始质疑这个体系结构。为了对数据库进行插入,XML的结构必须可以从SQL存储库中访问(其他列中的n.b数据可以与XML一起插入到DB中)。这让我想知道XML表示是否应该存储在对象本身、服务层或其他地方。
实现这个问题的解决方案的最佳方法是什么?
更新:对我问题的澄清。XML存储库当前保存到一个文件中。在我看来,这是将XML结构的知识保持在一个错误的水平上,因为那时我在将XML表示保持到我想要的任何介质方面没有灵活性。让对象了解它的XML表示(或CSV表示等)是否很糟糕?是否应该将有关该结构的知识保持在另一个层次,那又是什么层次呢?
发布于 2017-12-27 07:32:22
您不只是将XML存储库更改为有SQL后端吗?Yopur的存储库究竟是什么并不重要,它们只是用来存储和检索数据的“黑匣子”。将XML知识保密在XML存储库中,并将其后端使用SQL。
您可以将其链接到SQL存储库,或者将其保持为单独的。
https://stackoverflow.com/questions/-100000015
复制相似问题