Как отобразиться, ряд перечисления вводят, в спящем режиме?

Я нашел его... for (property in object) { // do stuff } перечислит все свойства, и поэтому все глобально заявленные переменные на объекте окна..

8
задан Cuga 14 July 2009 в 22:15
поделиться

2 ответа

Разве this не делает то, что вам нужно?

Чтобы подробнее рассказать о легкомысленном начальном ответе, в справочнике приведены средства для использования порядкового номера перечисления для сопоставления перечислений .

В этом случае это на самом деле проще, чем кажется, поскольку вы размещаете перечисления в наборе, вам необходимо предоставить метод доступа для WicketType к подтипу IntEnumUserType, супертип позаботится о сопоставлении порядковый номер экземпляра.

package test;

public class WicketTypeState extends IntEnumUserType<WicketType> {
    private WicketType wicketType;

public WicketTypeState() {
    // we must give the values of the enum to the parent.
    super(WicketType.class, WicketType.values());
}

    public WicketType getWicketType() {
        return wicketType;
    }

    public void setWicketType(final WicketType wicketType) {
        this.wicketType = wicketType;
    }
}

Определите сопоставления для таблицы перечислений:

<hibernate-mapping package="test">  
  <class name="Wicket" table="Wicket">
    <id name="id" column="ID"/>
    <set name="wicketTypes" table="WicketType" inverse="true">
      <key column="ID"/>
      <one-to-many class="test.WicketTypeState"/>
    </set>
  </class>
</hibernate-mapping>

Затем для типа с набором перечислений определите сопоставление набора для этого свойства:

<hibernate-mapping package="test">
  <class name="WicketTypeState" lazy="true" table="WicketType">
    <id name="WicketType" 
      type="test.WicketTypeState"/>
  </class>
</hibernate-mapping>

Это сработало на моем поле (tm), дайте мне знать, если вам понадобится дополнительная информация.

2
ответ дан 5 December 2019 в 19:02
поделиться

В примере кода ниже показано, как то, что вы хотите, может быть достигнуто с помощью аннотаций.

@Entity
@Table (name = "wicket")
public class Wicket {

    ...
    ...

    private List<WicketType> wicketTypes = new ArrayList<WicketType>();

    @CollectionOfElements(fetch=FetchType.EAGER)
    @JoinTable(
            name="wicket_wicket_types", // ref table.
            joinColumns = {@JoinColumn(name="wicket_id")}
    )
    @Column(name="wicket_type_id")
    public List<WicketType> getWicketTypes() {
        return this.wicketTypes;
    }

    public void setWicketTypes(List<WicketType> wicketTypes) {
        this.wicketTypes = wicketTypes;
    }
    ...
    ...
}

WicketType - это стандартное перечисление Java 5, порядок и порядковые номера объявлений которого соответствуют порядку и столбцу ( wicket_type_id ) значения в таблице wicket_type .

public enum WicketType {
   WICKET_TYPE1, WICKET_TYPE2 ...
}
3
ответ дан 5 December 2019 в 19:02
поделиться
Другие вопросы по тегам:

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