📄 servletfinder.java
字号:
package com.struts.servlet;
import java.io.File;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
/**
* 用于从XML文件找出Servlet的类
*
* @author ljm
*
*/
public class ServletFinder {
private String servletClass;
private HashMap forwards;
public ServletFinder(String xmlFile, String servletName) {
forwards = new HashMap(); // 这句是不能少的
try {
File file = new File(xmlFile);
SAXReader reader = new SAXReader();
Document document = reader.read(file);
Element root = document.getRootElement();
List nodes = root.elements("action");
for (Iterator it = nodes.iterator(); it.hasNext();) {
Element servletElm = (Element) it.next();
if (servletElm.attributeValue("path").equals(servletName)) {
servletClass = servletElm.attributeValue("class");
// forward = servletElm.elementText("forward");
List infos = servletElm.elements("forward");
System.out.println(infos.size());
for (Iterator k = infos.iterator(); k.hasNext();) {
Element forward = (Element) k.next();
forwards.put(forward.attributeValue("name"), forward
.attributeValue("path"));
}
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
public String getServletClass() {
return servletClass;
}
public HashMap getForwards() {
return forwards;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -