import java.io.File;
import java.io.FileInputStream;
import java.io.StringWriter;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer; public static StringBuffer transXML2HTML(String xmlfile, String xslfile,
String sOutMethod, Properties params) {
StringWriter sw = new StringWriter();
StreamResult sr = new StreamResult(sw); try {
FileInputStream fis = new FileInputStream(xmlfile); File fxml = new File(xmlfile);
StreamSource sXML = new StreamSource(fxml);
File fxsl = new File(xslfile);
StreamSource sSTL = new StreamSource(fxsl); TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer(sSTL); if (sOutMethod != null)
transformer.setOutputProperty("method", sOutMethod); if (params != null) {
Enumeration keys = params.keys();
String _key = "";
while (keys.hasMoreElements()) {
_key = (String) keys.nextElement();
transformer.setParameter(_key, params.getProperty(_key));
}
}
transformer.transform(sXML, sr);
}catch (Exception ex) {
logger.error("",ex);
}
return sw.getBuffer();
}
我存入XML的时候用DOM4J
但是用XSLT取出的时候我用的是JAXP