xmlファイルへのプロファイルの読み込み
1、key-value対で保存した情報
コードに必要な情報は、key-valuペアでプロファイルに書き込むことができます.HardDiskProperties.propertiesをsrcディレクトリの下に置く
テストコード
2、1のプロファイルが単純すぎるためxmlが表示されます.HardDiskのようなxmlファイルに情報を書き込むとします.xml、srcディレクトリの下に置く
テストコード
3、XMLデータの記述基準があれば、SQL文が関係データベースでクエリー操作を実行できるように、XQUERYとXPATHが潮流に順応し、誕生したクエリー言語がXMLで任意のノードのデータを検索できるはずだと自然に考えられる.XQUERYは複雑で、使い勝手が悪いため、XPATHはだんだん主流になって、私たちはXPATHを勉強するだけで、すべてのクエリーの要求に対応することができます.
XPATHのいくつかの有用な関数:
string concat (string, string, string*)
2つの文字列を結合
boolean starts-with (string, string)
ある文字列が別の文字列で始まるかどうかを判断する
boolean contains (string, string)
ある文字列に別の文字列が含まれているかどうかを判断します.
string substring (string, number, number)
サブストリングの取得
number string-length (string)
文字列の長さを測る
number sum (node-set)
和を求める
number floor (number)
この数より小さい最大整数値を求めます
number ceiling (number)
この数より大きい最小整数値を求める
コードをテストするには、基本的なjdomが必要です.jarのほかにjaxenをダウンロードする必要があります.jar
コードに必要な情報は、key-valuペアでプロファイルに書き込むことができます.HardDiskProperties.propertiesをsrcディレクトリの下に置く
disk=c
capacity=8G
テストコード
public class BaseKeyValue {
public static void main(String[] args) throws Exception{
Properties pro=new Properties();
pro.load(BaseKeyValue.class.getClassLoader().getResourceAsStream("HardDiskProperties.properties"));
String diskStr=pro.getProperty("disk");
String capacityStr=pro.getProperty("capacity");
System.out.println(" : "+diskStr+" , "+capacityStr);
}
}
2、1のプロファイルが単純すぎるためxmlが表示されます.HardDiskのようなxmlファイルに情報を書き込むとします.xml、srcディレクトリの下に置く
<?xml version="1.0" encoding="UTF-8"?>
<HD>
<disk name="C">
<capacity>8G</capacity>
</disk>
</HD>
テストコード
public class TestJdom{
public static void main(String[] args) throws Exception{
SAXBuilder saxBuild=new SAXBuilder();
Document doc=saxBuild.build(TestJdomXPATH.class.getClassLoader().getResourceAsStream("HardDisk.xml"));
Element root=doc.getRootElement();
List list=root.getChildren();
for(int i=0;i<list.size();i++){
Element diskE=(Element)list.get(i);
String diskName=diskE.getAttributeValue("name");
String capacity=diskE.getChildText("capacity");
System.out.println(" , "+diskName+" , "+capacity);
}
}
}
3、XMLデータの記述基準があれば、SQL文が関係データベースでクエリー操作を実行できるように、XQUERYとXPATHが潮流に順応し、誕生したクエリー言語がXMLで任意のノードのデータを検索できるはずだと自然に考えられる.XQUERYは複雑で、使い勝手が悪いため、XPATHはだんだん主流になって、私たちはXPATHを勉強するだけで、すべてのクエリーの要求に対応することができます.
XPATHのいくつかの有用な関数:
string concat (string, string, string*)
2つの文字列を結合
boolean starts-with (string, string)
ある文字列が別の文字列で始まるかどうかを判断する
boolean contains (string, string)
ある文字列に別の文字列が含まれているかどうかを判断します.
string substring (string, number, number)
サブストリングの取得
number string-length (string)
文字列の長さを測る
number sum (node-set)
和を求める
number floor (number)
この数より小さい最大整数値を求めます
number ceiling (number)
この数より大きい最小整数値を求める
コードをテストするには、基本的なjdomが必要です.jarのほかにjaxenをダウンロードする必要があります.jar
public class TestJDomXpath {
public static void main(String[] args) throws Exception{
SAXBuilder saxBuilder=new SAXBuilder();
Document doc=saxBuilder.build(TestJDom.class.getClassLoader().getResourceAsStream("HardDisk.xml"));
Element root=doc.getRootElement();
List list=XPath.selectNodes(root, "/HD/disk");
for(int i=0;i<list.size();i++){
Element diskElement=(Element)list.get(i);
String diskName=diskElement.getAttributeValue("name");
String capacity = ( (Text) XPath.selectSingleNode(diskElement,
"//disk[@name='" + diskName + "']/capacity/text()")).getTextNormalize();
System.out.println(" , "+diskName+" , "+capacity);
}
}
}