LocalizableTextFormatter 클래스

com.ibm.websphere.i18n.localizabletext 패키지에 있는 LocalizableTextFormatter 클래스는 현지화 가능 텍스트 패키지를 사용하기 위한 1차 프로그래밍 인터페이스입니다. 이 클래스의 인스턴스에는 키 및 자원 번들에서 언어별 문자열을 작성하기 위해 필요한 정보가 들어 있습니다.

LocalizableTextFormatter 클래스는 java.lang.Object 클래스를 확장하고, 다음 인터페이스를 구현합니다.
  • java.io.Serializable
  • com.ibm.websphere.i18n.localizabletext.LocalizableText
  • com.ibm.websphere.i18n.localizabletext.LocalizableTextL
  • com.ibm.websphere.i18n.localizabletext.LocalizableTextTZ
  • com.ibm.websphere.i18n.localizabletext.LocalizableTextLTZ

클래스 인스턴스의 작성 및 초기화

LocalizableTextFormatter 클래스는 다음 생성자를 지원합니다.
  • LocalizableTextFormatter()
  • LocalizableTextFormatter(String resourceBundleName, String patternKey, String appName)
  • LocalizableTextFormatter(String resourceBundleName, String patternKey, String appName, Object[] args)
LocalizableTextFormatter 인스턴스는 특정 값(예: 자원 번들 이름, 키 및 형식화 애플리케이션의 이름)을 가져야 합니다. 이전에 나열된 두 번째 생성자를 사용하여 이들 값을 전달하지 않는 경우, 다음을 호출하여 이들을 개별적으로 설정할 수 있습니다.
  • setResourceBundleName(String resourceBundleName)
  • setPatternKey(String patternKey)
  • setApplicationName(String appName)

네 번째 메소드인 setArguments(Object[] args)를 사용하여 구성 후 선택적 현지화 값을 설정할 수 있습니다. 이 주제의 끝에서 애플리케이션 특정 값의 처리의 내용을 참조하십시오. 사용법 예에 대해서는 복잡한 문자열 작성의 내용을 참조하십시오.

형식화 텍스트를 위한 API

LocalizableTextFormatter 클래스의 형식화 메소드는 로케일 및 시간대 값의 일부 조합을 기반으로, 메시지 키 및 자원 번들 세트에서 문자열을 생성합니다. 각 메소드는 구현된 네 개의 현지화 가능 텍스트 인터페이스 중 하나에 해당합니다. 다음 목록은 각 형식화 메소드가 정의되는 인터페이스를 나타냅니다.
  • LocalizableText.format()
  • LocalizableTextL.format(java.util.Locale locale)
  • LocalizableTextTZ.format(java.util.TimeZone timeZone)
  • LocalizableTextLTZ.format(java.util.Locale locale, java.util.TimeZone timeZone)

인수가 없는 형식 메소드는 JVM(Java™ Virtual Macine)의 기본값으로 설정된 로케일 및 시간대 값을 사용합니다. 네 개의 메소드는 모두 필요할 때 LocalizableException 오브젝트를 발행합니다.

메시지 카탈로그의 위치 및 appName 값

현지화 가능 텍스트 패키지로 작성된 애플리케이션은 메시지 카탈로그에 로컬로 또는 원격으로 액세스할 수 있습니다. 분산 환경에서는, 중앙에 위치한 원격 메시지 카탈로그를 사용하는 것이 적절합니다. 모든 클라이언트가 동일한 카탈로그를 사용할 수 있어 카탈로그의 유지보수가 간편합니다. 로컬 형식화는 테스트 상황에 유용하며 일부 환경에 적절합니다. 로컬 또는 원격 형식화를 지원하려면, LocalizableTextFormatter 인스턴스가 형식화 애플리케이션의 이름을 표시해야 합니다.

예를 들어, 애플리케이션이 원격 카탈로그를 사용하여 메시지를 형식화할 때 실제로는 서버의 엔터프라이즈 Bean이 메시지를 형식화합니다. 현지화 가능 텍스트 패키지에 포맷터 Bean의 찾아보기와 이에 대한 호출의 발행을 자동화하기 위한 코드가 있다 해도, 애플리케이션이 포맷터 Bean의 이름을 알아야 합니다. LocalizableTextFormatter 클래스의 여러 메소드는 appName에 설명된 값을 사용합니다. 이는 형식화 애플리케이션의 이름을 말하며, 값이 설정된 애플리케이션의 이름은 아닙니다.

메시지 캐싱

LocalizableTextFormatter 인스턴스는 형식화된 메시지가 다시 필요할 때 재형식화될 필요가 없도록 이를 선택적으로 캐시할 수 있습니다. 기본적으로, 캐싱은 사용 가능하지 않지만, 캐싱을 사용 가능하게 하려면 LocalizableTextFormatter.setCacheSetting(true) 호출을 사용할 수 있습니다. 캐싱이 사용 가능하게 되고 형식 메소드가 호출될 때, 메소드는 메시지가 이미 형식화되었는지 여부를 판별합니다. 이러한 경우, 캐싱된 메시지가 리턴됩니다. 캐시에서 메시지를 찾을 수 없는 경우, 메시지가 형식화되어 호출자에게 리턴되고 나중에 사용하기 위해 메시지의 사본이 캐싱됩니다.

메시지가 캐싱된 후에 캐싱이 사용 불가능하게 되는 경우, 이들 메시지는 LocalizableTextformatter.clearCache 메소드를 호출하여 캐시가 지워질 때까지 캐시에 남겨집니다. 언제든지 캐시를 지울 수 있습니다. 다음 메소드 중 하나를 호출하면 캐시가 자동으로 지워집니다.
  • setResourceBundleName(String resourceBundleName)
  • setPatternKey(String patternKey)
  • setApplicationName(String appName)
  • setArguments(Object[] args)

폴백 정보 제공을 위한 API

일부 경우에는 메시지 형식화가 불가능할 수 있습니다. 현지화 가능 텍스트 패키지는 메시지를 요청된 언어로 정확하게 형식화할 수 없는 경우에도, 일부 정보를 가져올 수 있게 하여 폴백 계획을 구현합니다. LocalizableTextFormatter 인스턴스는 메시지 문자열, 시간대 및 로케일에 대한 폴백 값을 선택적으로 저장할 수 있습니다. LocalizableTextFormatter 인스턴스가 예외를 발생하지 않으면 이러한 값을 무시할 수 있습니다. 폴백 값을 설정하려면, 다음 메소드를 적절하게 호출하십시오.
  • setFallBackString(String message)
  • setFallBackLocale(Locale locale)
  • setFallBackTimeZone(TimeZone timeZone)

사용법 예에 대해서는 로컬화된 텍스트 생성의 내용을 참조하십시오.

애플리케이션 특정 값의 처리

현지화 가능 텍스트 패키지는 시간대 및 로케일을 기반으로 현지화에 대한 기본 지원을 제공하지만, 기타 값을 기초로 하여 메시지를 구성할 수도 있습니다. 현지화된 텍스트 형식화에 있어서 로케일 및 시간대 이외의 변수를 고려해야 하는 경우, 사용자의 포맷터 클래스를 작성하십시오.

포맷터 클래스는 LocalizableTextFormatter 클래스를 확장하거나 동일한 현지화 가능 텍스트 인터페이스의 일부 또는 전체를 독립적으로 구현할 수 있습니다. 적어도 클래스가 java.io.Serializable 인터페이스와 최소한 하나의 현지화 가능 텍스트 인터페이스 및 해당 형식 메소드를 구현해야 합니다. 클래스가 둘 이상의 로컬화 가능 텍스트 인터페이스 및 형식 메소드를 구현하는 경우, 인터페이스 평가의 순서는 다음과 같습니다.
  1. LocalizableTextLTZ
  2. LocalizableTextL
  3. LocalizableTextTZ
  4. LocalizableText

예를 들어, 현지화 가능 텍스트 패키지는 시간 및 날짜를 보고하는 클래스(LocalizableTextDateTimeArgument)를 제공합니다. 이러한 경우, 날짜 및 시간 형식화는 로케일, 시간대 및 양식의 세 가지 값에 따라 현지화됩니다.


주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rin_ltfapi
파일 이름:rin_ltfapi.html