📄 queryxml.java
字号:
package com.saas.sys.dbm;
import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import com.saas.sys.log.Logger;
public class QueryXML {
Logger log = new Logger(this);
private String xmlFilePath;
private String tableName;
private String queryName;
public String getQueryTableXML()
{
String queryStr = "";
try
{
String XMLFileName= xmlFilePath;
DOMParser parser=new DOMParser();
parser.parse(XMLFileName);
Document document=parser.getDocument();
NodeList query=document.getElementsByTagName("query");//获取query
boolean bTableFound = false;
boolean bQueryFound = false;
boolean bQueryInfoFound = false;
for (int i = 0;i<query.getLength();i++)
{
Node table = query.item(i);//获取query下的子节点
for(Node node=table.getFirstChild();node!=null;node=node.getNextSibling())
{
if(node.getNodeType()==Node.ELEMENT_NODE)
{
if(node.getNodeName().equals("table"))
{
NodeList tableBody = table.getChildNodes();
for (int j = 0;j<tableBody.getLength();j++)
{
Node queryList = tableBody.item(j);
for(Node querynode=queryList.getFirstChild();querynode!=null;querynode=querynode.getNextSibling())
{
if(querynode.getNodeType()==Node.ELEMENT_NODE)
{
if(querynode.getNodeName().equals("name"))
{
if (!bTableFound)
{
if (querynode.getFirstChild().getNodeValue().equalsIgnoreCase(this.tableName))
{
bTableFound =true;
NodeList queryBody = queryList.getChildNodes();
for (int k = 0;k<queryBody.getLength();k++)
{
Node queryString = queryBody.item(k);
for(Node Stringnode=queryString.getFirstChild();Stringnode!=null;Stringnode=Stringnode.getNextSibling())
{
if(Stringnode.getNodeType()==Node.ELEMENT_NODE)
{
if (!bQueryInfoFound)
{
if(Stringnode.getNodeName().equals("qname"))
{
if (Stringnode.getFirstChild().getNodeValue().equalsIgnoreCase(this.queryName))
{
bQueryFound = true;
}
}
if (bQueryFound && !bQueryInfoFound)
{
if(Stringnode.getNodeName().equals("qstring"))
{
queryStr = Stringnode.getFirstChild().getNodeValue();
bQueryInfoFound = true;
return queryStr;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
catch(Exception e)
{
log.LOG_INFO("解析saasQuery出错:"+e);
}
return queryStr;
}
public void setXmlFilePath(String path)
{
this.xmlFilePath = path;
}
public void setTableName(String tableName)
{
this.tableName = tableName;
}
public void setQueryName(String queryName)
{
this.queryName = queryName;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -