请解释在使用工厂的以下场景中使用Google-Guice自动连线的正确方法。我正在使用XML工厂进行XSLT处理。Google Guice为工厂自动装配
StringWriter strWriter = new StringWriter();
System.setProperty("javax.xml.transform.TransformerFactory",
"net.sf.saxon.TransformerFactoryImpl");
TransformerFactory xmlTransformerFactory = TransformerFactory.newInstance();
CustomUriResolver out = new CustomUriResolver(new HashMap<String, StringWriter>());
xmlTransformerFactory.setAttribute("http://saxon.sf.net/feature/outputURIResolver", out);
Transformer xmlTransfomer = xmlTransformerFactory.newTransformer(new StreamSource("src/main/resources/test.xslt"));
xmlTransfomer.transform(new StreamSource(new StringReader(xml)), new StreamResult(strWriter));
System.out.println(out.getResults().size());
for(Map.Entry resultEntry : out.getResults().entrySet()){
System.out.println(resultEntry.getValue());
};
我应该有自动线变压器厂,这需要定制URI resolver.Also这段代码是API将继续接受请求并处理它。但是那么它必须调用newTransformer的一部分()为它收到的每一个请求。
你需要一个新的变压器每次还是要变压器可用通过吉斯在整个应用程序中的单身? – pandaadb
我需要它作为单身..我可以使用相同的实例所有请求 –