0

我刚刚用它的值和 JSP 文件创建了 .properties

<%@ page pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<c:set var="language" value="${not empty param.language ? param.language :
        not empty language ? language : pageContext.request.locale}" scope="session" />
<fmt:setLocale value="${language}" />
<fmt:setBundle basename="ge.web.content.i18n.text" />
<!DOCTYPE html>

<html>
    <head>
        <title>JSP/JSTL i18n demo</title>
    </head>
    <body> 
        <a href="">ENGLISH </a> <br>
        <a href="">PARIS</a>
            <form method="post">
                <label for="username"><fmt:message key="login.label.username" />:</label>
                <input type="text" id="username" name="username">
                <br>
                <label for="password"><fmt:message key="login.label.password" />:</label>
                <input type="password" id="password" name="password">
                <br>
            <fmt:message key="login.button.submit" var="buttonValue" />
                <input type="submit" name="submit" value="${buttonValue}">
        </form> <br> text from database here.
    </body>
    </html>

问题 1)它从我的属性文件中获取用户名和密码(默认为英文)。它有效,但文本未显示在按钮中。键“login.label.password”是正确的。

问题 2)例如,当我单击一个链接时PARIS,我需要更改属性文件中的文本。我怎样才能做到这一点?如何更改语言环境?我想我应该在会话中写,因为我也需要从数据库中更改语言。

问题 3)通过更改属性文件的文本,我也需要数据库中的语言文本(不更改链接)。我怎样才能做到这一点?

Questin 4我应该使用 JSTL,还是应该将语言保存在会话中并使用类似的东西重定向?language="EN"

4

0 回答 0