一個通過http請求對elasticsearch進行數據查詢或操作的項目


一個通過http請求對elasticsearch進行數據查詢或操作的項目

在之前的項目中,一直使用mybatis,習慣了使用sql語句進行查詢和處理數據,當切換到elasticsearch數據源后,發現需要通過其對應的高級編程接口對數據進行操作和查詢,而且返回結果一層一層的,光解析數據,都挺麻煩,故而參考mybatis方式,自己針對http請求進行了一個封裝,在kibana中編寫查詢語句,然后復制作為查詢語言(類似mysql中的sql語句),然后對查詢結果進行解析定義,框架進行自動解析。

<?xml version="1.0" encoding="UTF-8" ?>
<elasticsearch>
       <dsl id="getDataList" esIndex="forecast_city_hour_air" parseResult="hits.hits[]._source->[aqi,pm10,pm25,so2,no2,co,o3,o38,quality,city,city_code,province,province_code]">
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "remark.keyword": {
              "value": #{remark}
            }
          }
        }
      ]
    }
  },
  "size": #{size}
}
    </dsl>
</elasticsearch>

在java中采用這種寫法就可以直接得到想要的數據,不用自己解析,詳情請參考:https://github.com/TheoryDance/esoperator


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM