Получить имя свойства poco - PullRequest
       3

Получить имя свойства poco

0 голосов
/ 27 декабря 2011

Я использую ormlite с android, и у меня есть класс Poco.

Пример:

public class TableName {
  @DatabaseField(id = true)
  public Integer id;

  @DatabaseField
  public String prop;
}

Я хочу иногда создавать

QueryBuilder<TableName, Integer> qb = dao.queryBuilder();
qb.where().eq("prop", "value");

Я бы хотел проверить строку "prop" без использования констант в моем классе poco (например, PROPNAME). Знаете ли вы эффективный способ сделать это? (без таких тяжелых вещей, как рефлексия).

Я бы очень хотел проверить код.

Привет

1 Ответ

1 голос
/ 27 декабря 2011

Документация ORMLite организовывает его таким образом, чтобы избежать везде строковых литералов:

public class TableName {
  public static final String FIELD_ID = "id";
  public static final String FIELD_PROP = "prop";

  @DatabaseField(id = true)
  public Integer id;

  @DatabaseField
  public String prop;
}

QueryBuilder<TableName, Integer> qb = dao.queryBuilder();
qb.where().eq(TableName.FIELD_PROP, "value");

Внутренне ORMLite использует отражение при передаче этой строки, поэтому это неизбежно при использовании этой библиотеки.

...