Elasticsearch 做为老牌搜索引擎,功能基本满足,但复杂,重量级,适合大数据量。
MeiliSearch 设计目标针对数据在 500GB 左右的搜索需求,极快,单文件,超轻量。
所以,对于中小型项目来说,我们可以考虑另一种搜索引擎:MeiliSearch。
import com.alibaba.fastjson.JSONObject;
import com.meilisearch.sdk.Client;
import com.meilisearch.sdk.Config;
import com.meilisearch.sdk.Index;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class MeiliSearchTest {
public static void main(String[] args) {
try {
Client client = new Client(new Config("http://localhost:7700", "oHD13HXio7EtmeVZ0pw4yTzsYgD_1pJon6r9P0s20VI"));
Index index = client.index("555ac306-f5d5-4924-b447-407e12b52398");
JSONObject jsonObj = new JSONObject();
// jsonObj.put("id", "998");
jsonObj.put("name6", "name6");
index.addDocuments(jsonObj.toJSONString());
} catch (Exception e) {
log.error("errorMsg:::=============>>>", e);
}
}
}
错误信息:
java.lang.NoSuchMethodError: okhttp3.MediaType.get(Ljava/lang/String;)Lokhttp3/MediaType;
原因:okhttp3包和已有的包有冲突
解决方法:重新引入okhttp3
替换其他包中的okhttp3,版本号为4.1.0
<dependency>
<groupId>com.meilisearch.sdk</groupId>
<artifactId>meilisearch-java</artifactId>
<version>0.11.0</version>
<scope>system</scope>
<systemPath>E:/02devSoftwareInstall/meilisearch/meilisearch-java-0.11.0.jar</systemPath>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.1.0</version>
</dependency>