onetoone onetomany mappedby ejemplo column anotaciones jpa indexing jpa-2.0

onetomany - JPA: definición de una columna de índice



onetomany jpa ejemplo (3)

Posible duplicado:
Especificando un índice (clave no única) usando JPA

¿Hay alguna forma de definir el índice en la columna de enitity para mejorar el rendimiento de las búsquedas? Vi que hibernate da @Index y @IndexColumn, pero estoy buscando la manera JPA para hacerlo.

Gracias

Aquí hay un ejemplo de mi entidad, necesito indexar una columna de nombre

@Entity @Table(name = "MY_TABLE") public class MyEntity { private long id; private String name; private String sourceInfo; ...


No hay una anotación JPA estándar. (JPA ni siquiera requiere generación de DDL).

Para EclipseLink, vea la página @Index .


OpenJPA le permite especificar una anotación no estándar para definir el índice en la propiedad.

Los detalles estan aqui


No, jpa no proporciona ninguna característica para definir o crear índices. Por alguna razón (desconocida para mí), solo es posible crear índices únicos en JPA.

Si no está utilizando Hibernate o si realmente no desea utilizar esas anotaciones, deberá crear sus anotaciones y el procesador para generar o actualizar la base de datos en consecuencia, pero no creo que sea muy trivial (y definitivamente no estándar

Editar

Aquí hay un ejemplo de cómo definir un índice con Hibernate

@org.hibernate.annotations.Table( appliesTo = "table_name", indexes = { @Index(name="single_column_index", columnNames = "col"), @Index(name="multi_column_index", columnNames = {"col1", "col2"}), } )