Spring动态验证

时间:2012-11-06 05:20:49

标签: java spring validation

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

提前致谢。

2 个答案:

答案 0 :(得分:3)

Bellow代码段可以帮助您。

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); 

答案 1 :(得分: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);