⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlattributefinder.java

📁 esri的ArcGIS Server超级学习模板程序(for java)
💻 JAVA
字号:
package com.esri.solutions.jitk.datasources.ogc.wms;

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class XMLAttributeFinder {
	private static Logger _logger = LogManager.getLogger(XMLAttributeFinder.class.getName());
	
	public XMLAttributeFinder() {
	}
	
    public String findAttribute(String name, String attrName, Node node) {
        try {
            if (node.getNodeType() != Node.ELEMENT_NODE) {
                _logger.error("Error: Search node not of element type");
            }

            if (!node.hasChildNodes()) {
                return "";
            }

            NodeList list = node.getChildNodes();

            for (int i = list.getLength() - 1; i >= 0; i--) {
                Node subnode = list.item(i);

                if (subnode.getNodeType() == Node.ELEMENT_NODE) {
                    if (subnode.getNodeName().equals(name)) {
                        if (attrName != null) {
                            NamedNodeMap namedNodeMap = subnode.getAttributes();

                            if (namedNodeMap.getNamedItem(attrName) != null) {
                                return namedNodeMap.getNamedItem(attrName)
                                                   .getNodeValue();
                            }
                        } 
                        else {
                            return subnode.getNodeValue();
                        }
                    }

                    String url = findAttribute(name, attrName, subnode);

                    if (url.length() > 0) {
                        return url;
                    }
                }
            }
        } 
        catch (Exception e) {
        	_logger.warn("unable to find attribute", e);
        }

        return "";
    }   	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -