假设我们有这个存储库:
public interface DeviceTypeRepository extends CrudRepository<DeviceType, Integer>, JpaSpecificationExecutor<DeviceType> {
public Iterable<DeviceType> findByNameContaining(String name);
}
当用户在搜索过滤器中输入错误的重音时,如何通过忽略来获得相同的结果?
例子:João |若昂 | JOÃO
, 马西奥 | Márcio
等
最佳答案
在 Spring 的内置功能中无法做到这一点。你可以考虑使用Elastic Search为此,有一篇关于此主题的文章 You Have an Accent .
另一种方法是不在数据库中存储重音字母并在执行 SQL 请求之前执行映射,或者使用自定义 SQL 函数在数据库端执行映射 - 但这是一种过于繁琐和脆弱的解决方案。
关于spring-boot - 如何忽略 Spring JPA findBy 存储库中的重音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54635250/