У меня есть Java-приложение, которое интенсивно использует большой файл для чтения, обработки и передачи в SolrEmbeddedServer (http://lucene.apache.org/solr/).
Одна из функций выполняет обычное экранирование HTML:
private String htmlEscape(String input)
{
return input.replace("&", "&").replace(">", ">").replace("<", "<")
.replace("'", "'").replaceAll("\"", """);
}
При профилировании приложения программа тратит примерно 58% времени на выполнение этой функции, 47% заменяет и 11% заменяет все.
Теперь, Java заменяет это медленно или я на правильном пути, и я должен считать программу достаточно эффективной, чтобы иметь узкое место в Java, а не в моем коде? (Или я заменяю неправильно?)
Заранее спасибо!