繁体   English   中英

如何将可配置的xml数据类型和数据移动到oracle数据库

[英]how to move configurable xml datatypes and data to oracle database

我正在处理一个遗留的Web应用程序,该应用程序每次在UI中发生更改时都通过使用Castor编组/解组xml文件来CRUD各种数据类型。 数据类型是可配置的,因此通过修改xml配置文件,您可以添加具有自定义属性的新的自定义数据类型。 添加的每个新的自定义数据类型将产生一个附加的xml文件。 例如配置文件片段

<group name="x">
    <my_attribute name="a1">
        <field name="id">
            <display_name>ID</display_name>
            <type>String</type>
            <nullable>false</nullable>
            <default_value/>
            <minimum_boundary/>
            <maximum_boundary/>
            <editable>false</editable>
        </field>
        <field name="name">
            <display_name>Name</display_name>
            <type>String</type>
            <nullable>false</nullable>
        </field>

...等等。

例如数据文件片段

`

<display-name>a1</display-name>
<values xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" timestamp="1357573081953" xsi:type="java:com.xxx">
    <id>blab1</id>
    <name>blab1name</name>
</values>

`

其中一些数据需要由第二个应用程序读取,因此将xml文件的子集放在zip文件中,并存储在oracle数据库的blob中。 它们随后被第二个应用程序解压缩并归档。 现在,应用程序已变得越来越复杂,这涉及到在第一个应用程序中对数据进行并发修改的问题,并且客户端希望仅在oracle db中管理该数据(具有可自定义的类型),而无需使用文件系统。 做这个的最好方式是什么? 哪些技术是不错的选择? 任何帮助深表感谢。

第一个想法就是简单地使用二进制存储(从11g开始)将所有xml存储为oracle xmltype,并且每次使用oracle的优化方法每次都读取/写入整个xml块……每个属性名称将是主要属性的一部分关键...确实需要数据大小和NFR的规范才能确定理想的解决方案,但是在此阶段需要考虑所有选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM