Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

JSP에서 필요한 리소스 번들을 식별하기 위해 찾기를 설정하는 방법은 무엇입니까?

<시간/>

태그는 주어진 로케일을 로케일 구성 변수에 저장하는 데 사용됩니다.

속성

태그에는 다음과 같은 속성이 있습니다. -

속성 설명 필수 기본값
ISO-639 언어 코드와 ISO-3166 국가 코드를 나타내는 두 부분으로 된 코드를 지정합니다. ko_KR
변형 브라우저별 변형 아니요 없음
범위 로케일 구성 변수의 범위 아니요 페이지

예시

리소스 번들은 로케일별 개체를 포함합니다. 리소스 번들은 키/값 쌍을 포함합니다. 프로그램에 로케일별 리소스가 필요한 경우 모든 로케일에 공통적인 모든 키를 유지하지만 로케일에 특정한 변환된 값을 가질 수 있습니다. 리소스 번들은 로케일별 콘텐츠를 제공하는 데 도움이 됩니다.

Java 리소스 번들 파일에는 일련의 키-문자열 매핑이 포함되어 있습니다. . 우리가 집중하는 방법은 java.util.ListResourceBundle을 확장하는 컴파일된 Java 클래스를 만드는 것입니다. 수업. 이러한 클래스 파일을 컴파일하고 웹 응용 프로그램의 클래스 경로에서 사용할 수 있도록 해야 합니다.

다음과 같이 기본 리소스 번들을 정의합시다 -

package com.tutorialspoint;
import java.util.ListResourceBundle;
public class Example_En extends ListResourceBundle {
   public Object[][] getContents() {
      return contents;
   }
   static final Object[][] contents = {
      {"count.one", "One"},
      {"count.two", "Two"},
      {"count.three", "Three"},
   };
}

이제 스페인어 로케일에 사용할 리소스 번들을 하나 더 정의하겠습니다. -

package com.tutorialspoint;
import java.util.ListResourceBundle;
public class Example_es_ES extends ListResourceBundle {
   public Object[][] getContents() {
      return contents;
   }
   static final Object[][] contents = {
      {"count.one", "Uno"},
      {"count.two", "Dos"},
      {"count.three", "Tres"},
   };
}

위의 클래스를 컴파일해 보겠습니다. Example.classExample_es_ES.class 웹 응용 프로그램의 CLASSPATH에서 사용할 수 있도록 합니다. 이제 다음 JSTL 태그를 사용하여 다음과 같이 세 개의 숫자를 표시할 수 있습니다. -

<%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c" %>
<%@ taglib uri = "https://java.sun.com/jsp/jstl/fmt" prefix = "fmt" %>
<html>
   <head>
      <title>JSTL fmt:setLocale Tag</title>
   </head>
   <body>
      <fmt:bundle basename = "com.tutorialspoint.Example">
         <fmt:message key = "count.one"/><br/>
         <fmt:message key = "count.two"/><br/>
         <fmt:message key = "count.three"/><br/>
      </fmt:bundle>
      <!-- Change the Locale -->
      <fmt:setLocale value = "es_ES"/>
      <fmt:bundle basename = "com.tutorialspoint.Example">
         <fmt:message key = "count.one"/><br/>
         <fmt:message key = "count.two"/><br/>
         <fmt:message key = "count.three"/><br/>
      </fmt:bundle>
   </body>
</html>

위의 코드는 다음 결과를 생성합니다 -

One
Two
Three
Uno
Dos
Tres