Bu yazıda elasticsearch’e indexlenmiş bir dökümanı veya kategoriyi silen java programını açklayacağız
ElasticSearch’de silme işlemi diğer işlemler gibi RestFULL api üzerinden yapılmaktadır.Aşağıda ElasticSearch’de Döküman ve Kategori Silme ile ilgili konuyu örnek ve kod parçası ile açıklayacağız.
Döküman silmek için Örnek;
$ curl -XDELETE ‘http://localhost:9200/twitter/tweet/_query?q=user:kimchy’
Kategori Silmek için Örnek
$ curl -XDELETE ‘http://localhost:9200/twitter/tweet/’
şeklinde çalışabilir. Burada dikkat edilmesi gereken durum kategori silindiğinde içindeki herşeyin silineceğidir. Ayrıca query’ler daha ayrıntılıda yazılabilmektedir. Ayrıntılı bilgi için tıklayın. Unutulmaması gereken başka birşey de en güvenli silme yönteminin elasticsearchid’si ile silinmesi böylece yanlışlıkla başka dosyaların silinmesi engellenir.
Java Kodu aşağıdadır.
public void delete() {
String category=”movies/movie/_query?q=_id:AUqGIPdLUwwDb-Jm2nTx”;
try {
String url = “http://127.0.0.1:9200/+ category;
URL object = new URL(url);
HttpURLConnection con = (HttpURLConnection) object.openConnection();
con.setDoOutput(true);
con.setDoInput(true);
con.setRequestProperty(“Content-Type”, “application/json”);
con.setRequestProperty(“Accept”, “application/json”);
con.setRequestMethod(“DELETE”);
//display what returns the POST request
StringBuilder sb = new StringBuilder();
int HttpResult = con.getResponseCode();
if (HttpResult == HttpURLConnection.HTTP_OK) {
BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream(), “UTF-8”));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line + “\n”);
}
br.close();
System.out.println(“” + sb.toString());
} else {
System.out.println(con.getResponseMessage());
}
} catch (Exception e) {
e.printStackTrace();
} }