2014-02-09 4 views
2

Предположим, что у меня есть класс Account, который имеет переменную экземпляра класса Person.Связать вложенный бит с нулевым значением, если все его свойства пусты в Spring MVC

public class Account { 
    private String accountId; 
    private Person person; 

    // getters and setters 
} 


public class Person { 
    private String name; 

    // getters and setters 
} 

Теперь Если форма POST тело содержит следующие Params:

account.accountId=123&account.person.name= 

Spring будет создавать новый экземпляр Person, даже несмотря на все его свойства являются пустыми (или нуль, потому что я использую @ControllerAdvice с @InitBinder, где я устанавливаю StringTrimmerEditor для String). Есть ли способ научить Spring не создавать экземпляр Person тогда?

ответ

0

Хм, я думаю, нет, потому что это принцип впрыскивания инъекций для инъекции объектов в объекты. и слабое соединение объектов. Если вы не хотите создавать объект Person, не предоставляйте ему setter. Но я не уверен, что весна хотела бы разрешить это с помощью аннотаций.