проверка bean-компонента javaee @NotNull не наследуется [дубликат]

Еще один полезный способ:

db.collection.aggregate([
  {$group: {
    _id: { 
      overallTime: { 
        $dateToString: { format: "%Y-%m-%dT%H", date: "$created_at" } 
      },
      interval: { $trunc: { $divide: [{ $minute: "$created_at" }, 15 ]}}
    },
  }},
])

И проще в секундах min , hour , day :

var format = "%Y-%m-%dT%H:%M"; // 1 min
var format = "%Y-%m-%dT%H"; // 1 hour
var format = "%Y-%m-%d"; // 1 day

db.collection.aggregate([
  {$group: {
    _id: { $dateToString: { format: format, date: "$created_at" } },
  }},
])
1
задан HPH 16 January 2019 в 13:40
поделиться

1 ответ

Пожалуйста, будьте точны, поскольку ваши наблюдения находятся в прямом противоречии с принятым ответом здесь . , кажется, не скован. не очень точен, либо есть, либо нет.

javax.validation.constraints.@NotNull - это проверка JSR, поэтому она должна охватываться вышеуказанным ответом. Если нет, возможно, вы можете попытаться прокомментировать этот ответ.

Я бы посоветовал опубликовать вашу программу / настройку драйвера, так как сомневаюсь, что валидатор bean-компонента jsr может не вызываться в ваших экземплярах.

Вы должны понимать, что это конкретное поведение, перечисленное в ответе выше, очень специфично для процессоров аннотаций проверки бобов & amp; не имеет ничего общего с общим наследованием аннотаций в Java.

Просто не по теме, но пытаюсь включить эти ответы, чтобы понять Наследование аннотаций в Java,

Ответ -1

Ответ -2 [ 117]

Ответ -3

Ответ -4 Spring MVC Validations

Просто для иллюстрации, нет сообщений об ошибках до строки - Bar bar = foo.getBar();, но когда я провожу его через валидатор, я получаю сообщение - bar- may not be null для обоих родителей & amp; ребенок,

@java.lang.FunctionalInterface
public interface FooChild extends Foo {

}

и программа водителя,

    import java.util.Set;

    import javax.validation.Configuration;
    import javax.validation.ConstraintViolation;
    import javax.validation.Validation;
    import javax.validation.Validator;
    import javax.validation.ValidatorFactory;

    public class DriverProgram {

        public static void main(String[] args) {
        Foo foo = () -> {
            return null;
        };

        Bar bar = foo.getBar();

        Configuration<?> config = Validation.byDefaultProvider().configure();
        ValidatorFactory factory = config.buildValidatorFactory();
        Validator validator = factory.getValidator();
        factory.close();

        Set<ConstraintViolation<Foo>> violations = validator.validate(foo);
        violations.forEach(v -> System.out.println(v.getPropertyPath() + "- " + v.getMessage()));
FooChild fooChild = () -> {
        return null;
    };

    bar = fooChild.getBar();

    violations = validator.validate(fooChild);
    violations.forEach(v -> System.out.println(v.getPropertyPath() + "- " + v.getMessage()));


        }

    }
0
ответ дан Sabir Khan 16 January 2019 в 13:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: