@Document etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
@Document etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

15 Mayıs 2018 Salı

SpringData ElasticSearch @Document Anotasyonu

Giriş
Şu satırı dahil ederiz.
import org.springframework.data.elasticsearch.annotations.Document;
Bu anotasyon ile işaretlenen sınıfı kullanabilmek için Elastic Search Repository'ler tanımlı olmalı ve kodda @EnableElasticsearchRepositories anotasyonu olmalıdır

Kavramlar
Index : ilişkisel veri tabanındaki DB anlamına gelir
Type : ilişkisel veri tabanındaki Table anlamına gelir
Document : ilişkisel veri tabanındaki Row anlamına gelir
Field : ilişkisel veri tabanındaki Column anlamına gelir

indexName alanı
Şöyle yaparız.
@Document(indexName = "myanswer")
shards Alanı
Açıklaması şöyle. Varsayılan shard değeri 5'tir.
As you can see we have a single index called sample divided into 5 shards. That is the default value provided by Spring Data @Document, which can be overridden with field shards.

9 Mayıs 2018 Çarşamba

SpringData MongoDB @Document Anotasyonu

Giriş
Şu satırı dahil ederiz.
import org.springframework.data.annotation.Id;
import
org.springframework.data.mongodb.core.mapping.Document;
MongoDB'de kullanılacak collection ismini belirtir. Repository ReactiveCrudRepository veya MongoRepository'den kalıtır 

Eğer nesnemizin Id alanını MongoDB doldursun istersek bir tane alanı @Id olarak işaretlemek gerekir. Bu alan genellikle String tipindendir.

Örnek
Şöyle yaparız. Bu durumda bookData isimli collection yaratılır.
@Document
public class BookData {

  @Id private String id;
  // Some more non-Id Strings...
  private Config config;
  private Metadata metadata;
  private Boolean downloaded;
  private Integer currentPageNumber;
  private int availablePages;
  private List<Bookmark> bookmarks;
  private StatsModel stats;

  @Transient private byte[] contents;

  public BookData() {}

  // getters and setters
}
collection Alanı
Örnek
Şöyle yaparız.
@Document(collection = "basequestion")
public class BaseQuestion {
  @Id
  private String id;
  ...
}