📄 classservice.java
字号:
package com.ajaxlab.ajax;
import org.jdom.*;
import org.jdom.input.*;
import java.util.*;
public class ClassService {
private Document dom;
/**
* 构造函数,初始化XML文档根结点
*
*/
public ClassService() {
try {
SAXBuilder builder = new SAXBuilder();
//this.dom = builder.build(new File("/ajaxlab/src/com/ajaxlab/ajax/products.xml"));
//this.dom = builder.build(ClassService.class.getClassLoader().getResourceAsStream("products.xml"));
this.dom = builder.build(ClassService.class.getResource("products.xml"));
}catch(Exception ex) {
System.out.println(ex.toString());
}
}
/**
* 取得XML文档第一级结点
* @return
*/
public ProductClass[] getAllClass1() {
Collection products = new ArrayList();
Iterator iterator = this.dom.getRootElement().getChildren().iterator();
do {
Element element = (Element)iterator.next();
ProductClass product = new ProductClass(element.getAttributeValue("id"),element.getAttributeValue("className"));
products.add(product);
}while(iterator.hasNext());
return (ProductClass[])products.toArray(new ProductClass[0]);
}
/**
* 取得XML文档指定的第二级结点
* @param class1Id
* @return
*/
public ProductClass[] getClass2ById(String class1Id) {
Collection products = new ArrayList();
Element class1Element = null;
Iterator iterator = this.dom.getRootElement().getChildren().iterator();
do {
Element element = (Element)iterator.next();
if(class1Id.equalsIgnoreCase(element.getAttributeValue("id"))) {
class1Element = element;
break;
}
}while(iterator.hasNext());
if(class1Element!=null) {
Iterator iter = class1Element.getChildren().iterator();
do {
Element element = (Element)iter.next();
ProductClass product = new ProductClass(element.getAttributeValue("id"),element.getAttributeValue("className"));
products.add(product);
}while(iter.hasNext());
return (ProductClass[])products.toArray(new ProductClass[0]);
}
else return null;
}
/**
* 取得XML文档指定的第三级结点
* @param class1Id
* @param class2Id
* @return
*/
public ProductClass[] getClass3ById(String class1Id,String class2Id) {
Collection products = new ArrayList();
Element class1Element = null;
Element class2Element = null;
Iterator iterator = this.dom.getRootElement().getChildren().iterator();
do {
Element element = (Element)iterator.next();
if(class1Id.equalsIgnoreCase(element.getAttributeValue("id"))) {
class1Element = element;
break;
}
}while(iterator.hasNext());
if(class1Element!=null) {
Iterator iter = class1Element.getChildren().iterator();
do {
Element element = (Element)iter.next();
if(class2Id.equalsIgnoreCase(element.getAttributeValue("id"))) {
class2Element = element;
break;
}
}while(iter.hasNext());
if(class2Element!=null) {
Iterator iter2 = class2Element.getChildren().iterator();
do {
Element element = (Element)iter2.next();
ProductClass product = new ProductClass(element.getAttributeValue("id"),element.getAttributeValue("className"));
products.add(product);
}while(iter2.hasNext());
}
return (ProductClass[])products.toArray(new ProductClass[0]);
}
else return null;
}
public static void main(String[] args) {
try {
ClassService service = new ClassService();
System.out.println(service.getAllClass1().length);
System.out.println(service.getClass2ById("1").length);
System.out.println(service.getClass3ById("1","1").length);
}catch(Exception ex) {
ex.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -