XCO通用對象數(shù)據(jù)模型的JavaScript實現(xiàn)版本,提供了XCO對象基于JS語言特性的API;關于XCO通用對象數(shù)據(jù)模型可參考<http://www.xson.org/project/xco/1.0.2/>
java中的類型 | JS中的類型 | 數(shù)據(jù)類型標識 |
---|---|---|
int | Number | I |
long | Number | L |
float | Number | F |
double | Number | D |
char | String | C |
boolean | Boolean | O |
String | String | S |
java.util.Date | Date | A |
java.sql.Date | Date | E |
java.sql.Time | Date | G |
XCO | XCO | X |
String[] | Array | SA |
List<String> | Array | SL |
Set<String> | Array | SS |
XCO[] | Array | XA |
List<XCO> | Array | XL |
Set<XCO> | Array | XS |
int[] | Array | IA |
long[] | Array | LA |
float[] | Array | FA |
double[] | Array | DA |
a. 設值
var xco = new XCO();
// 設置基本類型 xco.setIntegerValue("intVal", 2); xco.setLongValue("longVal", 100001); xco.setFloatValue("floatVal", 2.0); xco.setDoubleValue("doubleVal", -0.3); xco.setStringValue("stringVal", "hello xco.");
// 設置數(shù)組 xco.setStringArrayValue("stringArray", ["aa", "bb", "cc"]); xco.setIntegerArrayValue("intArray", [1, 3, 5, 8]);
// 設置XCO var xco1 = new XCO(); xco1.setStringValue("stringVal", "中國"); xco.setXCOValue("xcoVal", xco1);
經過上面的操作,之前的xco
對象以XML方式表示如下:
<?xml version="1.0" encoding="UTF-8"?> <X> <I K="intVal" V="2"/> <L K="longVal" V="100001"/> <F K="floatVal" V="2"/> <D K="doubleVal" V="-0.3"/> <S K="stringVal" V="hello xco."/> <SA K="stringArray"> <S V="aa"/> <S V="bb"/> <S V="cc"/> </SA> <IA K="intArray" V="1,3,5,8"/> <X K="xcoVal"> <S K="stringVal" V="中國"/> </X> </X>
b. 取值
var intVal = xco.getIntegerValue("intVal"); //number var stringVal = xco.getStringValue("stringVal"); //string var xcoVal = xco.getXCOValue("xcoVal"); //XCO var stringArray = xco.getStringArrayValue("stringArray"); //[]
// ... 更多可參考xco.js
c. 序列化
// XML序列化 var xml = xco.toXML();
// 反序列化 var xco = new XCO(); xco.fromXML(xml);
d. 以ognl方式訪問
xco.get('intVal'); xco.get('xcoVal.stringVal'); xco.get('stringArray[0]');
更多建議: