큰 파일을 많이 사용하여 읽고 처리하고 SolrEmbeddedServer (http://lucene.apache.org/solr/)에게 넘겨주는 Java 응용 프로그램이 있습니다.자바 탈출 HTML - 문자열 바꾸기 천천히?
private String htmlEscape(String input)
{
return input.replace("&", "&").replace(">", ">").replace("<", "<")
.replace("'", "'").replaceAll("\"", """);
}
응용 프로그램을 프로파일 링하는 동안이 프로그램이이 기능에, 47 %의 총에 교체, 11 %에서를 시간의 약 58 %를 지출 : 기능의
하나는 기본 HTML 회피를하지 모두 다 바꿔. 이제
, 자바는 천천히, 교체 또는 내가 옳은 길을 그리고 난이 프로그램은 내 코드에 충분한 자바에서의 병목 현상을 가지고하지 효율적으로 고려해야한다? (아니면 내가 잘못 바꾸 었습니까?)
미리 감사드립니다! 당신이 commons-lang에서 StringEscapeUtils.escapeHtml(input)
을 사용할 수 있습니다 HTML 회피를 들어
공유지 - 랭 (당신이이 ASF2.0 라이센스이기 때문에 법적으로 그것을 할 수 있습니다)를하지 않는 한 commons-lang이 제공하는 추가 메서드 및 도우미 클래스가 필요합니다. 단일 메소드에 대한 완전히 새로운 종속성을 갖는 것은 좋지 않습니다. – Esko
예.하지만 commons-lang은 대부분의 응용 프로그램에서 유용 할 수있는 많은 메소드를 가지고 있으며 작성자는 해당 메소드가 존재 하는지를 모르고 다시 작성합니다. – Bozho
감사합니다. 아마도 유용 할 것입니다. 내가 잘못 본 것이 아니라면, 프로젝트는 이미 아파치 공유를 Solr에 대한 의존성으로 사용합니다. 나는 그것을 살펴볼 것이다 : – cpf