Есть ли способ прочитать текст из файла внешних свойств в spring без использования аннотации @Value
. Пример: application.properties
var.foo="hello"
Я могу ввести его в spring bean, используя
@Value("${var.foo}") String value;
как переменная класса. Есть ли способ включить это свойство без использования аннотации @Value
. Что-то вроде проверки JSR bean.
@NotNull(message={custom.notnull})
и вы внесете значение этого значения в файле ValidationMessages.properties.
Например, если у меня есть ресурс (веб-компонент), и если мне нужно использовать аннотации Swagger для документирования,
@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");
}
}
и модель,
@ApiModel("user model")
public class User {
@ApiModelProperty(value = "This represents user id")
private String id;
private String firstName;
private String lastName;
...
}
Как вы экрнализуете эту строку/предложения/сообщения во внешний файл свойств. Я думаю, что это относится к общим аннотациям Java и spring, а не к Swagger. Причина, по которой я указал Swagger, заключается в том, что, как и в случае с гибернативной проверкой, библиотека Java имеет возможность указывать эти сообщения во внешнем файле ValidationMessages.properties и spring знает по умолчанию, чтобы выбрать его (или его можно настроить).
Предоставляет ли Swagger такой вариант? Если это не так, как мне настроить?
Основная проблема заключается в том, что я не хочу загромождать свой код/логику данными, связанными с документацией (метаданные).