Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;

import org.w3c.dom.Node;

import javax.xml.namespace.NamespaceContext;
import javax.xml.namespace.QName;

import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;

public class Main {
    private static final ThreadLocal<XPathFactory> xPathFactoryCache = new ThreadLocal<XPathFactory>() {
        @Override
        protected XPathFactory initialValue() {
            return XPathFactory.newInstance();
        }
    };

    public static String getStringContentByXPath(Node parentNode, NamespaceContext context, String xPathExpression)
            throws XPathExpressionException {
        return (String) getByXPath(parentNode, context, xPathExpression, XPathConstants.STRING);
    }

    public static Object getByXPath(Node parentNode, NamespaceContext context, String xPathExpression, QName type)
            throws XPathExpressionException {
        XPathFactory xPathFactory = xPathFactoryCache.get();
        XPath xPath = xPathFactory.newXPath();
        xPath.setNamespaceContext(context);
        return xPath.evaluate(xPathExpression, parentNode, type);
    }
}