Question_6
ReadByID.java
Java XML 2016
package question_6;
import static controller.Document_DOM.getDocumentParse;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
/**
*
* @author Lonely
*/
public class ReadByID {
public void Display(String id) {
try {
NodeList nList = getDocumentParse("src\\Data\\products.xml").getElementsByTagName("product");
System.out.println("===QUESTION [6] Reading By ID: " + id);
for (int i = 0; i < nList.getLength(); i++) {
Node nNode = nList.item(i);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
//Attribute
if (nNode.hasAttributes()) {
NamedNodeMap nMap = nNode.getAttributes();
for (int j = 0; j < nMap.getLength(); j++) {
Node node = nMap.item(j);
//Equal and get value by attribute
if (node.getNodeValue().equals(id)) {
Element el = (Element) nList.item(i);
NamedNodeMap nnm = el.getAttributes();
if (nnm.getLength() > 0) {
//Value by id
System.out.println("\nName: " + el.getElementsByTagName("name").item(0).getTextContent());
System.out.println("Des: " + el.getElementsByTagName("des").item(0).getTextContent());
System.out.println("Price: " + el.getElementsByTagName("price").item(0).getTextContent());
System.out.println("Catalog: " + el.getElementsByTagName("catalog").item(0).getTextContent());
}
}
}
}
}
}
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
Main.java
Java XML 2016
package run;
import question_1.CreateXML;
import question_2.ReadDOM;
import question_3.Add;
import question_4.Update;
import question_5.Delete;
import question_6.ReadByID;
/**
*
* @author Lonely
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
//1 Tạo file XML dùng DOM
CreateXML c = new CreateXML();
c.create();
//2 Đọc toàn bộ cấu trúc file XML (Hiển thị node gốc, các node con, value, attribute)
ReadDOM r = new ReadDOM();
r.Display();
//3 Thêm một node có product id = 999, các thông tin khác (name, price, des, catalog) tùy chọn và save vào file question_3.xml
Add s = new Add();
s.Add("999", "question_3.xml");
//4 Tìm kiếm node có product id = 1 và cập nhật giá (price) thêm 200
Update u = new Update();
u.update("1", 200, "question_4.xml");
//5 Xóa node có product id = 2, save vào file question_5.xml
Delete d = new Delete();
d.delete("1", "question_5.xml");
//6. Hiển thị chi tiết sản phẩm có product id=1
ReadByID r6 = new ReadByID();
r6.Display("1");
}
}
0 nhận xét:
Post a Comment