2014-07-18 1 views
0

많은 프로젝트에서 프로그래밍 팀은 xhtml 파일의 모든 정적 텍스트 조각을 특성 파일에 배치하는 스타일로 작업합니다. 예를 들어 :JSP 내에서 속성 텍스트 자리 표시자를 사용하는 것이 좋습니다.

XHTML =

... 
<h1>${messages.resourceBundle['key.to.static.text.placeholder']}</h1> 
... 

messages.properties는 =

... 
key.to.static.text.placeholder=This will be the heading for this page only 
... 

사람이의 장점은 무엇인가 설명 할 수 있을까? 모든 XHTML 파일을 변경하는

  • 올바른 .properties 파일에 대한 사냥을 필요로하고 개별 호텔은
  • 에 변화를 만들기 위해 : 지금까지

    , 나는 단지 다음과 같은 단점을 볼 수 있습니다

  • 다른 사용자가 속성을 다시 사용한 경우 속성을 참조하는 다른 페이지가 없음을 확인해야하므로 까다로운 속성이되므로 등록 정보 파일이 중복 속성으로 커집니다.
  • 1000 개의 xhtml이있는 경우 1000 개의 .properties 파일을로드해야합니다. 당신이 WebFlow를 사용하고 다른 플로우로 전달되는 플로우를 가지고 있다면, 프로퍼티는 복제되어야합니다. 즉, 때때로 많은 특성 파일에 같은 특성을 배치하여 렌더링해야합니다. 올바르게
  • 코드를 읽기가 어렵습니다. '이 페이지의 제목이됩니다.'라는 텍스트로 작업하기를 원한다면 먼저 속성 파일의 xhtml에있는 위치를 찾아야합니다. xhtml을 단순히 볼 수는 없습니다 한 번 렌더링 된 내용이 어떻게 배치 될지 명확하게 확인하십시오.

내가 볼 수있는 유일한 장점은 텍스트 재사용과 가능하면 html 이스케이프입니다.

코딩이 불만이라면 사과하겠습니다.하지만 Google에서 사냥을했기 때문에 추론을 찾을 수 없습니다.

많은 감사합니다.

답변

4

콘텐츠를 국제화하는 일반적인 방법입니다. 언어 (또는 로켈)마다 하나의 속성 파일을 만들고 컨텍스트에 따라 어느 속성 파일을로드 할지를 결정하는 동적 방법을 사용합니다. (예 : 브라우저가 보내는 언어 HTTP 헤더).

언어 당 1 개의 JSP 파일을 제공하는 것보다 틀림없이 유연하며, 복수형 또는 문체상의 차이가 현지화 된 텍스트를 작성하는 방식을 변경하는 복잡한 경우를 처리 할 수 ​​있습니다.

표준 JDK 기능인 조회 자원 번들입니다. jsp 당 하나의 파일을 빌드 할 필요는 없습니다 (프레임 워크가 이런 식으로 작동할까요?). 그렇게하면 번역을하는 사람을 도울 수 있습니다.