2016-11-16 12 views
1

Я использую следующий код для кэширования xsl (одинаковый для всех запросов), чтобы файл не читался с диска каждый раз.XSL-кэширование в java-зависимых файлах xsl

Мой вопрос в том, относится ли xsl к 100 другим файлам xsl (<xsl:include href="file1"/>), они будут загружены в кеш? они все еще будут считаны с диска?

Если нет, то как мы можем заставить все зависимые xsls читать в памяти и кэшировать?

private static Templates cachedXslt = null; 
// Transformer 
     if(cachedXslt == null) 
     { 
      Source xsltSrc = new StreamSource(xslPath); 

      TransformerFactory transformerFactory = TransformerFactory.newInstance(); 
      cachedXslt = transformerFactory.newTemplates(xsltSrc); 
     } 

    Transformer transformer = cachedXslt.newTransformer(); 

ответ

1

Да, шаблоны объект будет содержать какой-то внутренний/Сост в памяти представления всей таблицы стилей (то есть, все модули таблицы стилей). Хотя, конечно, что происходит, конечно, зависит от реализации (JAXP - это интерфейс, а реализации JAXP могут реализовывать его по-разному.)

Смежные вопросы