Spec-Zone.ru › OpenJDK 24

Интерфейс аннотаций Relational

@Retention(RUNTIME) @Target(ANNOTATION_TYPE) public @interface Relational
Мета-аннотация для реляционных аннотаций, используемая на аннотации.

Следующий пример демонстрирует, как создать и использовать реляционную аннотацию. Аннотация Orderid указывает на существование связи между OrderEvent и OrderLineEvent. Если у них одинаковый ID, строка заказа относится к заказу.

@MetadataDefinition
@Relational
@Name("com.example.OrderId")
@Label("Order ID")
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface OrderId {
}

@Name("com.example.Order")
@Label("Order")
@Category("Orders")
class OrderEvent extends Event {
    @Label("Order ID")
    @OrderId
    long orderId;

    @Label("Order Date")
    @Timestamp
    long orderDate;
}

@Name("com.example.OrderLine")
@Label("Order Line")
@Category("Orders")
class OrderLineEvent extends Event {
    @Label("Order ID")
    @OrderId
    long orderId;

    @Label("Quantity")
    long quantity;

    @Label("Product")
    String product;
}
Since:
9

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/jdk.jfr/jdk/jfr/Relational.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API