猿问

如何翻译 .java 源文件中的文本?

我有一个这样的枚举


public enum CheckboxFeature {


    Option1(" choose this"),

    Option2(" or this"),

    Option3(" maybe this"),

    Option4(" lastly this");


    @Getter

    private final String text;


    public static CheckboxFeature fromName(String v) {

        for (CheckboxFeature c: CheckboxFeature.values()) {

            if (c.name().equalsIgnoreCase(v)) {

                return c;

            }

        }

        throw new IllegalArgumentException(v);

    }

}

这将四个选项显示为 Web 视图中的复选框


<form:checkboxes items="${features}" path="enabledFeatures" itemLabel="text" delimiter="<br/>"/>

我该如何翻译这些选项?我将 fmt:message 用于 Web 视图中的其余翻译。


我试过了


Option1(" <fmt:message key=\"text.test\"/>"),


Option1(" ${option1}"),


<fmt:message key="text.select" var="option1"/>

在.jsp 中。它们都不起作用,所以它似乎不能以这种方式工作。翻译字符串的正确方法是什么?理想情况下,使用已就位的 fmt:message 和 i18n 资源(lang.properties 文件)并处理 servlet 的其余部分?


智慧大石
浏览 166回答 2
2回答

慕沐林林

1、CheckboxFeature添加方法如:&nbsp;public static List<String> getAllCheckboxFeature(String v) {&nbsp; &nbsp; &nbsp; &nbsp; return Arrays.asList(Option1.getText(),...Option4.getText());&nbsp;}2、比使用jstl之类的:<c:forEach items="${options}" var="option">&nbsp; &nbsp; <input type="checkbox" ="${option}"></c:forEach>
随时随地看视频慕课网APP

相关分类

Java
我要回答