6

Utilizzo dell'annotazione @Id È possibile aggiungere un campo id all'oggetto modello e quando eseguo una query l'oggetto modello risultante conterrà il valore di elasticsearch _id in il campo annotato @Id.Annotazioni dei metadati Spring-data-elasticsearch per _version, _id etc

Tuttavia, devo ancora capire come ottenere altri metadati di documenti come lo _version. Ho provato ad aggiungere un campo version al mio modello e annotarlo con l'annotazione @Version ma non è successo nulla e il campo è rimasto null.

{ 
    "_index" : "twitter", 
    "_type" : "tweet", 
    "_id" : "1", 
    "_version" : 1, 
    "found": true, 
    "_source" : { 
     "user" : "kimchy", 
     "postDate" : "2009-11-15T14:12:12", 
     "message" : "trying out Elasticsearch" 
    } 
} 

mi riferisco ai campi quali _index, _type, _id, _version ecc ...

Sono particolarmente interessato a _version perché che viene utilizzato per il blocco ottimistico.

Mi sembra che se lo _id è supportato, allora lo _version e gli altri campi di metadati dovrebbero essere supportati in qualche modo.

Ho appena letto i documenti spring-data-elasticsearch e non riesco a trovare nulla. Se qualcuno lo sa, si prega di avvisare.

Tutti i campi di metadati del documento elasticsearch sono supportati in spring-data-elasticsearch? Se é cosi, come?

Inoltre, se riesco a ottenere in qualche modo lo _version come posso usarlo per il blocco ottimistico quando si utilizza spring-data-elasticsearch?

Grazie.

risposta

1

Per quanto posso dire, quello che stai chiedendo non esiste. Non ho alcuna reale capacità di dimostrarlo. Ho trovato un elenco di annotazioni per Spring-data-elasticsearch:

http://docs.spring.io/spring-data/elasticsearch/docs/current/api/org/springframework/data/elasticsearch/annotations/package-tree.html

Né @id né @version sono su quella lista.

Sono in grado di trovare altre cose che hanno un'annotazionema non sono Spring-data-elasticsearch.

se parlassi solo di Spring-Data mi piacerebbe sottolineare voi a questo:

http://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/annotation/Version.html

org.springframework.data.annotation

annotazione Tipo Versione

@Documented @Retention (valore = RUNTIME)

@Target (valore = {FIELD, METHOD, ANNOTATION_TYPE}) public @interface

Versione Demarcate una proprietà da utilizzare come campo versione per implementare il blocco ottimistico sulle entità.

Da: 1.5

Autore: Patryk Wasik, Oliver Gierke

Ecco un link al codice di usarlo:

http://hantsy.blogspot.com/2013/10/spring-data-new-perspective-of-data.html

Non sono sicuro se questo è ciò che si vuole, ma questo è il più vicino io Puoi venire. È per il blocco ottimistico.

Problemi correlati