Spring boot externalizar propriedades / mensagens de configuração em anotações Java

Existe uma maneira de ler o texto do arquivo de propriedades externas na primavera sem usar o@Value anotação. Ex: application.properties

var.foo="hello"

Eu posso injetá-lo em um feijão de primavera usando

@Value("${var.foo}") String value;

como uma variável de classe. Existe uma maneira de incluir essa propriedade sem usar o@Value anotação. Algo como a validação do bean JSR.

@NotNull(message={custom.notnull})

e você externaliza esse valor da propriedade emValidationMessages.properties Arquivo.

Exemplo, se eu tiver uma classe de recurso (componente da web) e se precisar usar anotações do Swagger para documentá-las,

@controller
@path("/")
@Api(description = "User Resource API")
public class UserResource {

    @Path("/users")
    @GET
    @Produces(MediaType.APPLICATION_JSON)
    @ApiOperation(value = "returns user details", notes = "some notes")
    public User getUser() {

        return new User(123, "Joe", "Montana");
    }
}

e o modelo

@ApiModel("user model")
public class User {

    @ApiModelProperty(value = "This represents user id")
    private String id;
    private String firstName;
    private String lastName;
    ...
}

Como você externaliza essa string / frases / mensagens para um arquivo de propriedades externo. Eu acho que isso se aplica a anotações gerais sobre Java e spring e não é específico para o Swagger. A razão pela qual especifiquei o Swagger é que, assim como a biblioteca Java de validação de hibernação, tem a opção de especificar essas mensagens em um arquivo externo ValidationMessages.properties e o Spring sabe por padrão buscá-lo (ou pode ser configurado).

O Swagger fornece essa opção? Caso contrário, como faço para configurar um?

O problema subjacente é que não quero desorganizar meu código / lógica com dados relacionados à documentação (metadados).

questionAnswers(4)

yourAnswerToTheQuestion