Rumah  >  Artikel  >  Java  >  Cara menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch

Cara menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch

PHPz
PHPzasal
2023-09-20 17:39:23657semak imbas

Cara menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch

Cara menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch

Abstrak:
Artikel ini memperkenalkan cara menggunakan bahasa Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch. Dengan menggabungkan keupayaan enjin carian berkuasa Elasticsearch dengan fleksibiliti dan kemudahan penggunaan Java sebagai bahasa pembangunan, kami boleh membina sistem carian masa nyata yang cekap dan tepat.

Kata kunci: Java, Elasticsearch, carian masa nyata, pembangunan

1 Pengenalan
Dengan pertumbuhan maklumat yang pesat, carian masa nyata telah menjadi bahagian yang amat diperlukan dalam aplikasi moden. Elasticsearch ialah enjin carian dan analisis edaran masa nyata sumber terbuka yang menyediakan fungsi carian yang berkuasa dan boleh memenuhi keperluan carian dalam senario aplikasi yang berbeza. Dalam artikel ini, kita akan belajar cara menggunakan bahasa Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch. Penyediaan perlu mencipta klien Elasticsearch untuk berinteraksi dengan pelayan Elasticsearch. Ia boleh dibuat menggunakan perpustakaan pelanggan Java rasmi yang disediakan oleh Elasticsearch, atau perpustakaan pihak ketiga lain seperti RestHighLevelClient. Dalam artikel ini, kami menggunakan RestHighLevelClient sebagai contoh.

Contoh kod:

RestHighLevelClient client = new RestHighLevelClient(
        RestClient.builder(
                new HttpHost("localhost", 9200, "http"),
                new HttpHost("localhost", 9201, "http")));

4 Cipta indeks
    Sebelum melakukan carian masa nyata, kami perlu mencipta indeks untuk menyimpan data kami. Indeks boleh dianggap sebagai jadual dalam pangkalan data, digunakan untuk menyimpan dan menyusun data. Kita boleh mencipta indeks melalui klien Elasticsearch.
  1. Contoh kod:
  2. CreateIndexRequest request = new CreateIndexRequest("my_index");
    client.indices().create(request, RequestOptions.DEFAULT);
  3. 5. Tambah dokumen
  4. Menambah dokumen ialah proses menyimpan data ke dalam indeks Elasticsearch. Kita boleh mencipta objek IndexRequest, menambah data dokumen kepadanya, dan kemudian melaksanakan operasi pengindeksan melalui klien.
Contoh kod:

IndexRequest request = new IndexRequest("my_index")
        .id("1")
        .source("name", "John Doe",
                "age", 25,
                "email", "john.doe@example.com");
IndexResponse response = client.index(request, RequestOptions.DEFAULT);

6. Data carian

Menggunakan Elasticsearch untuk carian masa nyata adalah fokus artikel ini. Kami boleh melakukan operasi carian dengan mencipta objek SearchRequest dan menetapkan keadaan carian yang sepadan.

Contoh kod:

SearchRequest request = new SearchRequest("my_index");
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();

TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery("name", "John");

sourceBuilder.query(termQueryBuilder);
request.source(sourceBuilder);

SearchResponse response = client.search(request, RequestOptions.DEFAULT);
SearchHits hits = response.getHits();

7 Memproses hasil carian

Setelah kami melakukan operasi carian, kami perlu memproses hasil carian yang dikembalikan. Hasil carian dikembalikan dalam bentuk satu atau lebih objek SearchHit Setiap objek SearchHit mewakili dokumen yang memenuhi kriteria carian.

Sampel kod:

for(SearchHit hit : hits) {
    String name = hit.getSourceAsMap().get("name").toString();
    int age = Integer.parseInt(hit.getSourceAsMap().get("age").toString());
    String email = hit.getSourceAsMap().get("email").toString();
    System.out.println("Name: " + name + ", Age: " + age + ", Email: " + email);
}

8 Ringkasan

Dalam artikel ini, kami mempelajari cara menggunakan bahasa Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch. Dengan menggabungkan keupayaan enjin carian berkuasa Elasticsearch dengan fleksibiliti Java, kami boleh membina sistem carian masa nyata yang cekap dan tepat. Kami belajar cara membuat klien Elasticsearch, mencipta indeks, menambah dokumen, melaksanakan operasi carian dan memproses hasil carian. Saya harap artikel ini dapat memberikan rujukan asas kepada pembaca untuk membantu mereka bermula dengan cepat dan menguasai kaedah menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch.

Rujukan:


Dokumentasi rasmi Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/client/java-rest/master/index.html

Java RestHighLevelClient dokumentasi: https://www . elastic.co/guide/en/elasticsearch/client/java-rest/master/java-rest-high.html


(bilangan perkataan: 1050 patah perkataan)

Atas ialah kandungan terperinci Cara menggunakan Java untuk membangunkan aplikasi carian masa nyata berdasarkan Elasticsearch. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn