Api 比较 java 中的文本

Api's to compare text in java

我在 java 中有一个 Web 服务,各种服务使用它在 mongodb 中插入数据。但是由于数据是重复的,我们提出了一个解决方案来制作一个键值对数据并检查它,如果它已经存在,然后插入 mongodb。 但是比较这么多字符串是一项艰巨的任务,需要很多时间。

  1. 我们是否有任何 lib/API 可用于更快的比较。
  2. Elasticsearch是用来搜索的,是不是也可以用来做文本比较?

我的字符串示例

"Message:WSClient.FetchReservation::WS FetchReservation calledSystem.Net.WebException: The operation has timed out at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at BOTWSClient.ChannelDirectWS.YieldGain.fFetchReservation(String strReservationXML) at BOTWSClient.WSClient.FetchReservation(String RequestXML)"

如果文本完全相同,您可以对其进行哈希处理并比较哈希值。如果您没有太多条目,sha1 就足够了。

正如 JonasCz 所说,请更新您的问题,以便我们知道文本是否完全相同(我的解决方案可行)或相似(我的解决方案无效)。