當前位置:首頁 » 存儲配置 » xml存儲數據

xml存儲數據

發布時間: 2022-01-13 12:33:36

A. 請問網路游戲存儲數據(例如所有裝備),用txt好還是XML為什麼

怎樣用java從xml里讀取數據 並且保存為txt格式: 有XML文件內容: <?xml version="1.0" encoding="UTF-8"?> <...

為什麼有必要把xml數據保存到資料庫中?: 個人覺得A B. 用別的方法也可以保證安全性,為什麼要資料庫? C. 這個答案是搞笑得

怎樣用java從xml里讀取數據 並且保存為txt格式: 怎樣用java從xml里讀取數據 並且保存為txt格式 ...屬性值,子節點等所有信息,從而或者節點...

如何使用xml 存儲數據: 創建一個介面 XmlInterface.java ? public interface XmlInt...

java可以用xml存儲數據嗎?: 可以到是可以 但是如果存儲的是正兒八經的數據的話 建議你用ACCESS XML用來做配置文件倒是蠻合...

java可以用xml存儲數據嗎?: 可以不過要熟悉xml解析的過程,其實存數據用List<Map>

解釋為什麼xml對數據存儲是非常有用的?: 1、XML :使用簡單的標記描述數據。 2、XML:主要就是針對數據存儲的。不象ACCESS、sql...

怎樣用JAVASCRIPT+XML存儲數據: 在網上找的免費的空間.但是不能支持資料庫,而且...等等,就是不用javascript也可以實現用x...

少量數據存在XML中還是資料庫中好?: 少量數據存在XML中和資料庫中都不快,假設你的「少量數據」是不常變動的,則速度上最快的是:客戶端請求...

關系資料庫中如何存儲xml數據?: 現在很多資料庫都開始支持xml欄位,並且支持xml數據...做社交網站,日誌這種信息存xml還是關系...

B. XML適合代替資料庫存儲大量數據嗎

不適合.
XML適合記錄配置文件或者其他的需要移植和共享的數據.
優勢在於使用標準的格式,不同的程序和系統都能看懂.也方便人閱讀.
存儲大量數據時沒有簡單有效的檢索機制,無論查詢還是修改都不便於操作.
用作記錄時適合體積小,可閱讀,可移植的數據.

C. 資料庫中保存的xml與xml文件

在資料庫中保存:
sqlserver可以在sql語句中,對欄位中的xml進行xpath檢索。
如:select * from xxx where xpath(xxx.xmlfield, "/book/title") = "abc";

函數名我記不清了,大意就是這樣了。

可以統一備份方案。
方便查找。
大量記錄時,性能很高。

大小有限制,4G

xml文件:
優點:與資料庫比想不出什麼優點。

編程時要讀資料庫,知道文件名,再去打開文件IO,解讀。還要記得關掉。
大量的文件,性能很差。一個目錄里有幾萬個文件,基本就完蛋了。非常慢。

備份時要另外設計文件備份方案。

大體上就這些。

D. 關系資料庫中如何存儲xml數據

XML文檔的一個普通存在的問題是如何持久保存(Persist) XML文檔。在一個關系資料庫中存儲XML文檔是一個非常常用的方法,因為當前關系資料庫的使用非常廣泛。
將XML文檔插入到資料庫中不是簡單的方法,這其中需要很多其它額外的考慮。現在我提供了一些技巧,你可以使用這些技巧在關系資料庫中存儲XML文檔。
1、文檔表:
一個最簡單和容易的方法是,在一個具有單一文本域的資料庫中建立一個表,由此你可以在表中存儲XML數據。由於這些特定資料庫和特定XML文檔,這一文本域可以是一個二進制大型對象(BLOB,binary large object)。有些資料庫需要存儲的是大量的BLOB數據而不是文本。
這一方法的優點是,將數據存入表中變得相當簡單,而且重新獲得也同樣很容易。這種文檔表的管理也很方便。
這種方法的缺點在於你將可能無法進行一些有用的文本搜索,並且在放置特定文檔時也會碰到困難,因為沒有任何方法來識別表中的文檔;
2、主鍵表:
下一個比較復雜的方法是使用一個主鍵表(keyed table)。這種方法與文檔表非常相似,但此時你的表中包含兩個域:一個唯一的主鍵和XML文檔。使用這種方法,你既可以具有存儲和獲得整個XML文檔的簡潔性,也可以使用一些管理這些唯一主鍵的復雜操作;
建立主鍵的一種通用方法是使用XML文檔中的MD5求和檢驗。請記住如果你想在表中包括多份XML文檔,這一方法遠不足夠。在這種情況下,你可以添加額外的key fields標識鍵列。
與文檔表一樣,主鍵表很容易執行,它可以在表中查找特定的文檔。然而,與文檔表一樣,你仍然不能執行任何文本查詢;
3、有限離散表:
這一方法更加復雜,但它給你帶來更多的靈活性。使用有限離散表,你可以建立用於存儲有限分散的XML信息的表,這是什麼意思?請看以下的例子:
假設你具有一個順序文檔。在文檔的根部(Root)有一個Order元素,這一元素包括CustomerInfo, ItemInfo, 以及hippingInfo元素。在資料庫中,你可以建立一個OrderDoc表,表中包含一個ID域,一個CustomerInfoId域,一個ItemInfoId域,一個ShippingInfoId域。然而,你還可以建立一個CustomerInfoId表,一個ItemInfoId表,一個ShippingInfoId表。這些表都包含很多信息相關的各自的ID域,這些信息包括用戶,選項,郵寄信息。在這一表中,還包含著其它額外的等級。比如,CustomerInfo表包含AddressInfo域,即從AddressInfo表中引用的入口。
這種方法的優點是,允許你更緊密地建立XML數據的模型。這種方法使得你進行數據的一些成熟的查詢。它也使得數據的使用性更強,因為你不再需要XML分析器來讀取數據。
不足之處是這種方法需要更多的精力來開發和維護。這意味著每一文檔都需要解析成分離的部分,然後存儲在資料庫中。如果這一過程沒有得以很好管理,有可能會丟失一些數據。而且,這也意味著,當從一個資料庫中獲得一個XML文檔時,你不得不連接這些分散的部分。

E. 你的項目中什麼地方用到了XML存儲數據,不要泛指

web程序的話主要是廣告輪換和站點地圖這兩個地方用到了XML操作,其實就是簡單的操作節點。有時候我看有人在信息列表裡面也用到了,我是不習慣那樣做。做桌面程序的時候以前做網路版掃雷的時候把雷區也做成XML存儲了,主要是想著資料庫太浪費內存,調用演算法有時候上百萬顆雷的是候也會刷屏卡,所以用到了。其實類似資料庫,只不過容量沒那麼大,看你怎麼用了

F. 使用xml存儲數據時,xml數據大小在大於多少時,增刪改查速度會慢於資料庫

這個沒有試過,不過如果數據量大於10000條盡量選擇資料庫吧!以前在使用消息隊列時數據量大了用XML傳遞時出現過錯誤,都改成用SQL存儲過程調用了!

G. 如何使用xml 存儲數據

創建一個介面

XmlInterface.java

?
public interface XmlInterface {

/**
* 建立XML文檔
* @param fileName 文件全路徑名稱
*/
public void createXml(String fileName);
/**
* 解析XML文檔
* @param fileName 文件全路徑名稱
*/
public void parserXml(String fileName);
}

介面實現

XmlImpl.java

?
package com.test.xml;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class XmlImpl implements XmlInterface{
private Document document;

public void init() {
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
this.document = builder.newDocument();
} catch (ParserConfigurationException e) {
System.out.println(e.getMessage());
}
}

public void createXml(String fileName) {
Element root = this.document.createElement("scores");
this.document.appendChild(root);
Element employee = this.document.createElement("employee");
Element name = this.document.createElement("name");
name.appendChild(this.document.createTextNode("wangchenyang"));
employee.appendChild(name);
Element sex = this.document.createElement("sex");
sex.appendChild(this.document.createTextNode("m"));
employee.appendChild(sex);
Element age = this.document.createElement("age");
age.appendChild(this.document.createTextNode("26"));
employee.appendChild(age);
root.appendChild(employee);
TransformerFactory tf = TransformerFactory.newInstance();
try {
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(document);
transformer.setOutputProperty(OutputKeys.ENCODING, "gb2312");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
PrintWriter pw = new PrintWriter(new FileOutputStream(fileName));
StreamResult result = new StreamResult(pw);
transformer.transform(source, result);
System.out.println("生成XML文件成功!");
} catch ( e) {
System.out.println(e.getMessage());
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
} catch (FileNotFoundException e) {
System.out.println(e.getMessage());
} catch (TransformerException e) {
System.out.println(e.getMessage());
}
}

public void parserXml(String fileName) {
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document document = db.parse(fileName);

NodeList employees = document.getChildNodes();
for (int i = 0; i < employees.getLength(); i++) {
Node employee = employees.item(i);
NodeList employeeInfo = employee.getChildNodes();
for (int j = 0; j < employeeInfo.getLength(); j++) {
Node node = employeeInfo.item(j);
NodeList employeeMeta = node.getChildNodes();
for (int k = 0; k < employeeMeta.getLength(); k++) {
System.out.println(employeeMeta.item(k).getNodeName()
+ ":" + employeeMeta.item(k).getTextContent());
}
}
}
System.out.println("解析完畢");
} catch (FileNotFoundException e) {
System.out.println(e.getMessage());
} catch (ParserConfigurationException e) {
System.out.println(e.getMessage());
} catch (SAXException e) {
System.out.println(e.getMessage());
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}

測試

?
public class Main {

public static void main(String args[]){
XmlImpl dd=new XmlImpl();
String str="D:/grade.xml";
dd.init();
dd.createXml(str); //創建xml
dd.parserXml(str); //讀取xml
}
}

結果

生成xml

<?xml version="1.0" encoding="GB2312"?><scores><employee><name>wangchenyang</name><sex>m</sex><age>26</age></employee></scores>復制代碼

H. 將數據存入資料庫好,還是存入xml文件好,還是各有優缺點請各位指點。

各有優缺點,小量的數據可以用xml代替資料庫,因為xml載入是載入在內存中,讀寫速度比資料庫快得多,數據量較大那樣就用資料庫了,不然內存耗費太多。

I. 通過XML和資料庫存儲的區別

這是風牛馬不相及的兩個概念,他們的結構,應用范圍是完全不同的,目前的資料庫基本上都是關系型資料庫,以sql與oracle為代表,都是非常大型的,可以進行數據的海量存儲;而xml主要解決的是數據在網上傳輸標準的問題,把原來各種各樣的數據孤島可以通過xml這座橋梁連接起來,所以打個比方,資料庫就好比是盛數據的桶,而xml則是數據傳輸轉換的橋梁,所以資料庫是資料庫,xml是xml,二者是截然不同的,當然二者也存在非常緊密的聯系,畢竟都是處理數據的工具,就是很多其他的數據格式可以通過xml輸入到資料庫中,資料庫中的關系型數據也可以通過xml轉化成其他的數據格式

J. java可以用xml存儲數據嗎

可以到是可以
但是如果存儲的是正兒八經的數據的話
建議你用ACCESS
XML用來做配置文件倒是蠻合適的

熱點內容
aipdf腳本 發布:2024-11-14 15:49:18 瀏覽:618
小編程家 發布:2024-11-14 15:43:29 瀏覽:140
java非同步存儲 發布:2024-11-14 15:43:28 瀏覽:66
普通電腦做數據伺服器 發布:2024-11-14 15:42:29 瀏覽:895
數位演算法軟體 發布:2024-11-14 15:38:00 瀏覽:516
apache外網不能訪問 發布:2024-11-14 15:34:15 瀏覽:479
如何上傳透明頭像 發布:2024-11-14 15:32:40 瀏覽:836
無法連接雲伺服器 發布:2024-11-14 15:09:26 瀏覽:504
公司伺服器的管理應該如何進行 發布:2024-11-14 15:08:18 瀏覽:215
rc4加密解密 發布:2024-11-14 15:06:32 瀏覽:89