查询查找策略

以下策略可用于仓库基础结构来解决查询。你可以在XML配置中的命名空间通过query-lookup-strategy属性来配置策略或者在JAVA配置中通过Enable\${store}Repositories声明queryLookupStrategy属性。有些策略可能对于特别的datastores并不支持。

  • CREATE 从查询方法名来尝试构建一个特别的数据查询。一般的方法都是从方法名称中移除已知设定好的前缀并且解析剩余的方法名。更多信息在创建查询
  • USE_DECLARED_QUERY 尝试找到一个声明查询并在找不到的时候抛出一个异常。查询可以用声明的方式在任何地方进行定义或者被其他方法声明。查看特别的store文档来找到对这个store可用的选项.如果载入时间中在基础repository中找不到为这个方法这个声明的查询,这个查询就失败了。
  • CREATE_IF_NOT_FOUND (默认)结合CREATE和USE_DECLARED_QUERY。它会首先查找声明过的查询,如果找不到被声明的查询,它会创建一个以方法名为基础的自定义查询。这就是默认的查找策略,因此如果你没有明确的做任何配置就会使用默认的策略。它能够让你通过方法名快速的查询定义但也可以通过引入所需的声明查询自定义调整这些查询。