3

我有一个使用 Hibernate、Spring 和 Java 开发的 Web 应用程序,它可以访问 Informix 数据库......

想象一下,您正在搜索某条带有重音符号的记录,例如“María”,但您在搜索框中输入“Maria”......现在它没有显示任何结果,但它必须显示“María”记录,以及任何其他组合,例如“Maríá”或“Máríá”或“Mária”等...

我怎样才能实现它?提前致谢...

4

2 回答 2

3

您需要使用 ascii 化字符串添加另一列,并将其与 ascii 化搜索字符串进行比较,但使用主字符串作为结果。无法说服 Informix 为您执行此操作,尤其是当您希望从索引中获取它时。

附带说明一下,如果您在 Java 内存中拥有所有字符串,则可以将 aSortedMap与自定义Collator的 -based一起使用Comparator

于 2013-01-18T12:39:09.627 回答
0

当您需要通过 Hibernate 搜索数据库并且担心口音、对更好的自然语言匹配感兴趣,或者只是想探索自动建议或错字更正等选项时,您应该查看Hibernate Search,它通过一对夫妇自动完成大部分操作的注释。

于 2014-09-16T17:51:05.907 回答