1

我是 Spring 验证的新手。以前我使用过 Struts 验证。对于动态验证,我们将在 errormessages.properties 文件中进行配置,例如“errors.required={0} is required”。稍后我们将用名称替换 {0}。无论如何在春天也这样做。请帮我。

提前致谢。

4

2 回答 2

3

波纹管代码片段可能会对您有所帮助。

errormessages.properties

 errors.required={0} is required

您需要在 spring-context.xml 中定义 ResourceBundleMessageSource bean。

<bean id="messageSource" class="org.springframwork.context.support.ResourceBundleMessageSource"> 
    <property name="messages">
         <list>
           <value>errormessages</value>
         <list>
    </property>
</bean>

在 bean messageSource 成员变量中访问消息。

@Autowired
private MessageSource messageSource;

第二个参数是要传递的对象数组。

messageSource.getMessage("errors.required",new Object[]{"Name"},"Default Required Error Message",null); 
于 2012-11-06T06:26:44.730 回答
2

如果您正在实现 Spring Validator 接口(http://static.springsource.org/spring/docs/current/spring-framework-reference/html/validation.html#validator) - 您可以使用直接指定消息参数

 void reject(String errorCode, Object[] errorArgs, String defaultMessage);
于 2012-11-06T08:16:38.710 回答