我们目前有以下任务,我正在努力寻找我认为应该在哪里的地方。Hibernate写入XML数据库
datamodel通过Hibernate存储在MySQL中。一切工作正常,产品出货。
对于计划的未来版本,尽管需要更改数据模型。我们还不知道发生了什么变化,发生了多大的变化,但我们确实知道客户数据库必须相应更新。
这很可能会再次对未来的版本中,这使我分手问题的一个未来版本发生:
- 是否合理通过转换现有的数据库内容来解决这个问题,通过他们出口到一个XML文件,基于它们已经创建的Hibernate版本,然后在用更新的Hibernate版本重写数据库内容之前更新内容(使用XSLT的f.ex.)?
我可以看到这种方法的优点如下:
- 我们必须一次写一个XSLT新版本。
- 我们可以很容易地将其应用于所有客户 - 甚至是自动化的。
- 通过链接相应的XSLT,我们可以轻松地将数据库内容从版本X转换为版本Y,即使存在多个版本。
但是,假设采用这种方法,实际的问题是我们不希望编写额外的代码来生成相应的XML文件。最好,我想使用一个数据库,它的内容存储在一个XML文件中,并提供一个JDBC接口。有没有人知道如何以最小的努力实现这一目标?
工作流程我心目中是以下几点:
- 从版本X.使用Hibernate的数据模型创建两个数据库连接,一个MySQL数据库,一个XML DB。从第一个中读出所有内容,将其转储到后面(这可能需要一些自定义代码)
- 编写XSLT,在XML DB的XML文件上执行它。
- 使用版本Y的Hibernate数据模型创建两个数据库连接,一个连接MySQL DB,一个连接XML DB。从XML读出所有内容并将其转储回MySQL。
可行吗?有没有更好的方法来解决这个问题?我在哪里可以找到一个支持JDBC的XML数据库?
谢谢。这几乎是我所期待的。还不完全,但肯定值得进一步探讨。 – Frank