我有一个 POJO,我使用 Struts2 属性标签在 JSP 上显示其属性:
public Class message
{
string messageText;
string messageType;
//getters and setters, here
}
Text: <s:property value="messageBean.messageText"/>
Type: <s:property value="messageBean.messageType"/>
该对象由用户输入或从数据库中读取创建。“messageType”属性中只有整数值,用作数据库中查找表的键。
选择“类型”值时,用户会在前一页获得单选选项,每个选项对应一个整数。当我显示值时,我目前只显示整数。我想显示与整数对应的文本,我将通过在操作类中使用键/值查找方法来完成此操作,并将代码更改为如下所示:
//in Action class
public String getTranslatedType()
{
if (messageBean.getMessageType().equals("12"))
return "Message for frequent callers.";
if (messageBean.getMessageType().equals("17"))
return "Message for first time callers.";
//etc
}
Text: <s:property value="messageBean.messageText"/>
Type: <s:property value="translatedType"/>
有一个更好的方法吗?
这似乎不起作用:
Type: <s:property value="Utility.getTranslatedText(messageBean.messageType)"/>
是否有从属性标记中调用静态实用程序方法的语法?