Topic: 将 .properties 文件用 XML 来替换,怎样设计结构比较好?

  Print this page

1.将 .properties 文件用 XML 来替换,怎样设计结构比较好? Copy to clipboard
Posted by: accason
Posted on: 2004-04-15 17:54

想将原来用 .properties 文件保存的配制信息用 XML 来保存,但发现 .properties 文件中都是 key 和 value 的对应关系,好像没有什么复杂的层次结构,反而不知道怎么设计 XML 的结构了,各位有经验的高手,能给出一个简单且适用的设计吗?
在 XML 设计好之后,我打算用 JAXB 来进行操作 XML 配制文件。

2.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: accason] Copy to clipboard
Posted by: Geminist
Posted on: 2004-04-23 12:23

<property>
<property1>value1</property1>
<property2>value2</property2>
......
</property>
如果你的properties文件中的属性没有层次结构的话恐怕也只用这样就可以了。如果有层次结构的话
例如
movie.killbill.name="Kill Bill"
movie.killbill.director="Quint Tarantino"
movie.bigfish.name="Big Fish"
movie.bigfish.director="Tim Burton"

转化成xml
<property>
<movie>
<killbill>
<name>"Kill Bill"</name>
<director>"Quint Tarantino"</director>
</killbill>
<bigfish>
<name>"Big Fish"</name>
<director>"Tim Burton"</director>
</bigfish>
</movie>
</property>

3.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: accason] Copy to clipboard
Posted by: jameszhang
Posted on: 2004-04-26 11:05

另一种是:

<property>
<property1 name = "" vaule = "" />
<property2 name = "" vaule = "" />
......
</property>
例如
movie.killbill.name="Kill Bill"
movie.killbill.director="Quint Tarantino"
movie.bigfish.name="Big Fish"
movie.bigfish.director="Tim Burton"

转化成xml

<property>
<property1 name = "movie.killbill.name" vaule ="Kill Bill"/>
<property2 name = "movie.killbill.director" vaule = "Quint Tarantino" />

......

4.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: jameszhang] Copy to clipboard
Posted by: helloworld
Posted on: 2004-04-26 11:39

学习大家发言.

5.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: accason] Copy to clipboard
Posted by: tangming
Posted on: 2004-04-26 13:03

http://java.sun.com/dtd/properties.dtd:
<?xml version="1.0" encoding="UTF-8"?>

<!-- DTD for properties -->

<!ELEMENT properties ( comment?, entry* ) >

<!ATTLIST properties version CDATA #FIXED "1.0">

<!ELEMENT comment (#PCDATA) >

<!ELEMENT entry (#PCDATA) >

<!ATTLIST entry key CDATA #REQUIRED>
JDK1.5中支持的,希望对你有用

6.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: accason] Copy to clipboard
Posted by: accason
Posted on: 2004-04-26 13:29

谢谢各位,就前面的两个 XML 设计,我想不用 attribute 的是不是好一点?尽量将程序需要读取的信息作为标签内容,而不是 attribute 。
在其他论坛,我得知有一个 jConfig 项目是做这个的,但既然 JDK 1.5 准备支持这个了,那也没必要现在就急着转换 .properties 文件了。
谢谢!

7.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: accason] Copy to clipboard
Posted by: jameszhang
Posted on: 2004-04-26 15:08

accason wrote:
谢谢各位,就前面的两个 XML 设计,我想不用 attribute 的是不是好一点?尽量将程序需要读取的信息作为标签内容,而不是 attribute 。
在其他论坛,我得知有一个 jConfig 项目是做这个的,但既然 JDK 1.5 准备支持这个了,那也没必要现在就急着转换 .properties 文件了。
谢谢!

就我个人认为,属性比标签内容的操作更方便,对象使用更少,内存站用少!!呵呵

8.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: jameszhang] Copy to clipboard
Posted by: DraculaCwg
Posted on: 2004-04-26 22:19

tag的可擴充性強
attribute的使用上便方便

9.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: jameszhang] Copy to clipboard
Posted by: Geminist
Posted on: 2004-04-27 21:36

jameszhang wrote:
就我个人认为,属性比标签内容的操作更方便,对象使用更少,内存站用少!!呵呵

但是做attribute的话一些符号会自动转义的,例如双引号等。

10.Re:将 .properties 文件用 XML 来替换,怎样设计结构比较好? [Re: Geminist] Copy to clipboard
Posted by: jameszhang
Posted on: 2004-04-28 13:52

Geminist wrote:
但是做attribute的话一些符号会自动转义的,例如双引号等。

那有什么关系呀?呵呵


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923