我很快就对方法getInteger()和getRequiredInteger()之间的区别提出了疑问。

public void foo(RequestContext requestContext){
    MutableAttributeMap flowScope = requestContext.getFlowScope();
    String bar = flowScope.getString("bar","bar"); // (attributeName, defaultValue)
    String baz = flowScope.getRequiredString("baz");
}


唯一的区别是,如果在地图中找不到属性名称,则可以使用getInteger()定义默认值?

最佳答案

根据Spring Web Flow API两者之间的区别与异常抛出有关-

getRequiredInteger()-返回映射中的整数属性值,如果该属性不存在且类型正确,则抛出异常。

getInteger()-返回映射中的整数属性值,如果未找到任何值,则返回默认值。

09-30 15:40