Использовать объект JavaScript resourceBundle более удобным способом - PullRequest
0 голосов
/ 01 февраля 2012

У меня есть следующий объект resourceBundle в javascript.

var resourceBundle = {
    en : {
        "EX_ONE" : "Example One",
                "EX_TWO" : "Example One",
                "EX_THREE" : "Example One"
        }
        fr : {
        "EX_ONE" : "ExampleD Uno",
                "EX_TWO" : "Exampled Twono",
                "EX_THREE" : "Exampled theree"
        }
}

Но дело в том, что это очень плохая практика, когда когда-либо, чтобы добавить метку, я должен прийти сюда, добавить новое значение ключа для всехЯ имею в виду только английский и (неправильный) французский.Но что, если есть другие языки?Можете ли вы предложить мне лучший способ, например, что мы используем файл свойств для JSP и Java.

1 Ответ

0 голосов
/ 01 февраля 2012

Поместите свой .properties файл комплекта ресурсов в classpath (WEB-INF / classess) следующим образом:

resources.properties

EX_ONE=Example One
EX_TWO=ExampleTwo
EX_THREE=Example Three

resources_fr.properties

EX_ONE=ExampleD Uno
EX_TWO=Exampled Twono
EX_THREE=Exampled theree

В вашем JSP

<%@ page language="java" import="java.util.*" %>
<%
ResourceBundle resource = ResourceBundle.getBundle("resources");
// your language is based on current locale set in request/session
String exOne=resource.getString("EX_ONE");
String exTwo=resource.getString("EX_TWO");
%>
Your localized text here:
<%
System.out.println(exOne);
System.out.println(exTwo);
%>
...