我对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();
}任何帮助都是非常感谢的!
发布于 2013-04-25 00:53:34
由于听起来像是使用request.setAttribute将msg放在servlet中的请求上,因此您可以在servlet中获得正确的年份,替换所有出现%CURRYEAR%的年份,只需将正确的消息放在请求上:
String year = "" + Calendar.getInstance().get(Calendar.YEAR);
request.setAttribute("msg", msg.replaceAll("%CURRYEAR%", year));然后在你的页面上这样做:
<c:out value="${msg}" />https://stackoverflow.com/questions/16196762
复制相似问题