Bom, fiquei com uma dúvida relacionada ao solid.
Quando eu aprendi orientação eu aprendi que você separa as classes de modelo da implementação, daí algumas regras de negócio ficam de fora dessas classes de modelo, daí eu sempre usei com a classe abaixo.
@Component
public Class Cliente {
private String none;
private List<Documento> documentos;
//Getter e setter e construtor padrão
}
@Component
public Class Documento{
private String nome;
// Getter e setter e construtor padrão
public Class ValidadorDocumento{
public boolean validar(Documento documento){
// Faz algo
}
}
Se eu deixar sem o construtor default. Ao usar a injeção de dependência do spring eu tenho erro, daí me força a não usar a injeção do spring para omitir os setter e usar somente o construtor. Fiquei com essa dúvida