Spring MVC针对各种字段的不同CustomDateEditor绑定器

时间:2015-11-08 15:33:34

标签: spring spring-mvc

在我的控制器中,我绑定了一个主要的日期自定义编辑器,适用于大多数字段,但不是全部: yyyy-MM-dd:

@InitBinder      
public void initBinder(WebDataBinder binder) 
{  
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    CustomDateEditor editor = new CustomDateEditor(dateFormat, true);
    binder.registerCustomEditor(Date.class, editor);
}   

我还有一些GUI字段映射到我的域对象中的Date,但它们是不同的。有些是 yyyy 格式(仅限年份)。他们需要一个自定义的日期活页夹。

是否可以定义绑定到特定字段的其他CustomDateEditor,而不是一对一的Type活页夹?

1 个答案:

答案 0 :(得分:2)

另一种方法是使用Spring Formatter代替PropertyEditors。 好的是,Spring has already formatters for Date@DateTimeFormat)和下一个好处是,它们是按照属性按注释配置的。

例如

   @DateTimeFormat(pattern="yyyy")
   private Date yearOnly;

   @DateTimeFormat(pattern="yyyy-MM-dd")
   private Date dayMonthYear;