Spring MVC с частичной привязкой объекта

Насколько я знаю, Spring MVC позволяет привязывать такие объекты:

@RequestMapping(...)
public void doSmth(MyObject obj) {
// All MyObject's fields are filled now
}

Но существует ли элегантное решение, позволяющее привязывать только определенные поля?

Например, класс User может содержать личную информацию, такую ​​как отметка времени регистрации, которую можно легко заменить сторонней стороной в случае использования общей привязки объекта.

Так что нужно что-то вроде:

class User {

   public String nick; <-- wanna bind this
   public String pass; <-- and this
   public Calendar timestamp; <-- but not this
   ...
}

Есть идеи?


person WildDev    schedule 22.08.2015    source источник


Ответы (1)


Попробуйте с инициализацией связывателя данных.

Например, используя аннотацию @InitBinder в контроллере:

@InitBinder
public void initBinder(WebDataBinder binder) {
  binder.setDisallowedFields("timestamp"); 
}
person Jose Luis Martin    schedule 22.08.2015