0

我对 Java 还很陌生,所以请耐心等待。我有一个放入 JSTL 标记的 scriptlet。我正在尝试取消我的 scriptlet 并将它们放在一个单独的类中。除了我真的被这个难住了。我有一个非常基本的 Java 方法:

static final String default = "Enter a message";

String subDate(String out){
    final String year = "" + Calendar.getInstance().get(Calendar.YEAR);
    return out.replaceAll("%CURRYEAR%", year);
}

在我的 JSTL 中,我将其称为如下

<c:out value="<%= subDate(msg) %>" default="<%= subDate(default) %>"

当我将它转换为我的 Java 类时,这就是我所拥有的。但我根本什么也得不到。我也很困惑如何传递多个参数,就像我在 JSTL 中所做的那样。

public String getsubDate(String in){        
    return in.replaceAll("%CURRYEAR%", YEAR) + getMsg();            
}

任何帮助是极大的赞赏!

4

1 回答 1

0

由于听起来您正在msg使用 servlet 提出请求,因此request.setAttribute您可以在 servlet 中获取正确的年份,替换所有出现的正确年份, %CURRYEAR%然后将正确的消息放在请求中:

String year = "" + Calendar.getInstance().get(Calendar.YEAR);
request.setAttribute("msg", msg.replaceAll("%CURRYEAR%", year));

然后在您的页面上执行以下操作:

<c:out value="${msg}" />
于 2013-04-24T16:53:33.670 回答