Grails .findBy 不适用于 redis



我有一个非常简单的测试用例,我正在尝试理解redis。我做了install-plugin redism .

域对象:

class BenchGroup {
  String groupName
  /*static mapWith = "redis"
  static mapping = {
    groupName(index:true)
  }*/
  static constraints = {
  }
}
引导代码:

def everyoneGroup = new BenchGroup(groupName:'everyoneGroup')
everyoneGroup.save()
if(everyoneGroup.hasErrors()){
  println everyoneGroup.errors
}
println everyoneGroup
def dammit = BenchGroup.findByGroupName('everyoneGroup')
println dammit

当我离开redis地图行注释时,它使用HSQL并输出如下:

stupidbenchmarks.BenchGroup : 2
stupidbenchmarks.BenchGroup : 2

当我切换到redis时,它会这样做:

stupidbenchmarks.BenchGroup : 2
null

Hibernate在进行查询之前会刷新(在本例中为findByGroupName),但NoSQL GORM数据存储实现不会(尚未),所以我假设您只需要刷新将保存的实例推送到数据存储,以便查询拾取它:

everyoneGroup.save(flush: true)

最新更新