就Spring验证而言,错误代码和消息代码之间的区别是什么?
我参考了就Spring验证而言,错误代码和消息代码之间的区别是什么?,spring,spring-mvc,Spring,Spring Mvc,我参考了BindingResult中的以下方法: 我试图找出错误代码和消息代码之间的区别。是否有人能提供一个例子,特别是一个例子,说明为什么给定的错误代码可能有多个消息代码?因为web应用程序是国际化的,当您拒绝某个对象并希望为其显示消息时,不要使用硬编码文本,因为无论使用何种语言,硬编码文本都会显示相同的内容 相反,您可以指定一个错误代码,稍后服务器将其作为从捆绑包中检索正确消息的密钥(现在,从必须找到正确消息文本的方法的角度来看,该错误代码是一个消息代码) 您的错误代码会解析为更多的消息代
BindingResult
中的以下方法:
我试图找出错误代码和消息代码之间的区别。是否有人能提供一个例子,特别是一个例子,说明为什么给定的错误代码可能有多个消息代码?因为web应用程序是国际化的,当您拒绝某个对象并希望为其显示消息时,不要使用硬编码文本,因为无论使用何种语言,硬编码文本都会显示相同的内容 相反,您可以指定一个错误代码,稍后服务器将其作为从捆绑包中检索正确消息的密钥(现在,从必须找到正确消息文本的方法的角度来看,该错误代码是一个消息代码) 您的错误代码会解析为更多的消息代码,因为Spring(基于实现)为您添加了一些额外的代码。以下是一个片段: […]它注册的错误代码由所使用的MessageCodesResolver确定。默认情况下,使用DefaultMessageCodesResolver,例如,它不仅使用您提供的代码注册消息,而且还注册包含您传递给reject方法的字段名的消息。因此,如果您使用rejectValue(“age”、“too.darn.old”)拒绝字段,除了too.darn.old代码外,Spring还将注册too.darn.old.age和too.darn.old.age.int(因此第一个将包括字段名,第二个将包括字段类型);这样做是为了方便开发人员定位错误消息等。[……] 最后一条语句是存在更多消息代码的原因,以控制显示给用户的消息,从通用代码(如“需要值”)到给定上下文的更具体代码(如“字段XXX需要值”) 本文对此进行了进一步解释,并给出了一个示例: 例如,如果代码“typeMismatch”,对象名称“user”,字段“age”:
因为web应用程序是国际化的,所以当您拒绝一个对象并希望为其显示一条消息时,您不会使用硬编码文本,因为无论使用何种语言,它都会显示相同的文本 相反,您可以指定一个错误代码,稍后服务器将其作为从捆绑包中检索正确消息的密钥(现在,从必须找到正确消息文本的方法的角度来看,该错误代码是一个消息代码) 您的错误代码会解析为更多的消息代码,因为Spring(基于实现)为您添加了一些额外的代码。以下是一个片段: […]它注册的错误代码由所使用的MessageCodesResolver确定。默认情况下,使用DefaultMessageCodesResolver,例如,它不仅使用您提供的代码注册消息,而且还注册包含您传递给reject方法的字段名的消息。因此,如果您使用rejectValue(“age”、“too.darn.old”)拒绝字段,除了too.darn.old代码外,Spring还将注册too.darn.old.age和too.darn.old.age.int(因此第一个将包括字段名,第二个将包括字段类型);这样做是为了方便开发人员定位错误消息等。[……] 最后一条语句是存在更多消息代码的原因,以控制显示给用户的消息,从通用代码(如“需要值”)到给定上下文的更具体代码(如“字段XXX需要值”) 本文对此进行了进一步解释,并给出了一个示例: 例如,如果代码“typeMismatch”,对象名称“user”,字段“age”: