Проверка действительно ли JSON является лучшей практикой? [закрытый]

this относится к текущему объекту.

Каждый нестатический метод работает в контексте объекта. Итак, если у вас есть такой класс:

public class MyThisTest {
  private int a;

  public MyThisTest() {
    this(42); // calls the other constructor
  }

  public MyThisTest(int a) {
    this.a = a; // assigns the value of the parameter a to the field of the same name
  }

  public void frobnicate() {
    int a = 1;

    System.out.println(a); // refers to the local variable a
    System.out.println(this.a); // refers to the field a
    System.out.println(this); // refers to this entire object
  }

  public String toString() {
    return "MyThisTest a=" + a; // refers to the field a
  }
}

Затем вызов frobnicate() на new MyThisTest() будет печатать

1
42
MyThisTest a=42

. Так эффективно вы используете его для нескольких вещей:

  • уточнить, что вы говорите о поле, когда есть что-то еще с тем же именем, что и поле
  • , относятся к текущему объекту в целом
  • вызывать другие конструкторы текущего класса в вашем конструкторе
19
задан Mihai Limbășan 25 November 2008 в 19:55
поделиться

2 ответа

На сервере проверка приходящих снаружи данных является необходимостью.

В браузере, это избыточно от безопасности POV, если можно ручаться, что JSON сгенерирован серверным кодом, которым Вы управляете и что любые данные, от которых это зависит, были проверены на сервере. Несмотря на это, это может все еще быть полезно для отладки.

7
ответ дан 30 November 2019 в 05:13
поделиться

Мой 2c по этому поводу:

(a) Да, очевидно, что входящие данные должны быть проверены, но

(b) Лучшее место для этого НЕ с данными Json. как есть, но с реальными объектами бизнес-логики, если используется привязка данных. Проверка JSON имеет смысл только в том случае, если вы обрабатываете «необработанный» JSON, но большинство служб (по крайней мере, в Java) сначала используют привязку данных, а затем работают с объектами бизнес-логики, а не с форматом данных (который часто является почти деталью реализации)

5
ответ дан 30 November 2019 в 05:13
поделиться
Другие вопросы по тегам:

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