Вы когда-нибудь задумывались, почему JDeveloper генерирует Attributes Enum в классе Entity или View Row? Attributes Enum содержит коллекцию имен атрибутов и набор статических переменных с индексами атрибутов. Эти индексы используются для поиска атрибута в геттере/сеттере. Атрибуты Enum — это структура, которая требуется JDeveloper во время разработки для создания кода Java. Во время выполнения Attributes Enum требуется только до тех пор, пока вы используете индекс статической переменной в методе получения/установки. Атрибуты Enum и список статических индексов в классе View Row:

Статический индекс используется в геттере/сеттере для доступа к атрибуту:

Attributes Enum имитирует порядок атрибутов в VO/EO. Вы можете думать об этом как о метаданных атрибутов. Не обязательно использовать индекс из Attributes Enum. В некоторых случаях вы можете получить индекс атрибута непосредственно из VO/EO Def и использовать его для доступа к атрибуту:

Имя правильно извлекается с использованием переопределенного геттера:

Скачать пример кода с GitHub

Первоначально опубликовано на сайте andrejusb.blogspot.com 23 декабря 2018 г.