7

我们正在使用 Spring MessageSource 在我们的应用程序中构建错误消息。

我们像这样填充我们的错误消息

dobInvalid = The DOB supplied {0} is invalid

我们想使用命名参数,所以我们可以做

dobInvalid = The DOB supplied {dob} is invalid

查看 getMessage 的 Api 文档似乎建议您可以执行此操作 http://static.springsource.org/spring/docs/1.2.x/api/org/springframework/context/MessageSource.html

args - 将为消息中的参数填充的参数数组(参数在消息中类似于“{0}”、“{1,date}”、“{2,time}”),如果没有,则为 null。

显然我们可以自己编写,但想知道 spring 是否可以做到,是否有人可以提供示例或使用命名参数而不是位置参数。

干杯马克

4

1 回答 1

6

AIUI,Spring MessageSource 与 JDK MessageFormat一起使用,因此没有这样的命名参数。{1,date}是一个示例,其中“date”指的是 formatType,no 指的是任意命名参数。

参数的一般形式是:

{ ArgumentIndex , FormatType , FormatStyle }
于 2012-10-04T13:06:36.730 回答