DefaultGroovyMethods排序导致版本变更和数据库更新
DefaultGroovyMethod sort leads to version change and database update
我有一个域对象列表,我想按特定 属性 对其进行排序。 Groovy 提供了很多函数以 "simple"/"groovy" 的方式处理列表。
问题是像
myDomainList.sort{it.position}
导致 myDomain-Table
中 version
的更新。
我想要的是没有(任何)休眠调用(数据库更改)的预期排序行为。
我怎样才能做到这一点?
sort
改变它正在处理的集合,除非你像这样使用它:
myDomainList.sort( false ) { it.position }
这个variation of sort有3个参数,第一个是Iterable本身,第二个boolean
(决定是否改变或创建一个新集合而不是改变原始集合)和第三个参数是关闭。
在前一种情况下,当 sort
修改列表时,域 class 被标记为脏,因此在事务关闭时刷新变得迫在眉睫。
我有一个域对象列表,我想按特定 属性 对其进行排序。 Groovy 提供了很多函数以 "simple"/"groovy" 的方式处理列表。
问题是像
myDomainList.sort{it.position}
导致 myDomain-Table
中 version
的更新。
我想要的是没有(任何)休眠调用(数据库更改)的预期排序行为。
我怎样才能做到这一点?
sort
改变它正在处理的集合,除非你像这样使用它:
myDomainList.sort( false ) { it.position }
这个variation of sort有3个参数,第一个是Iterable本身,第二个boolean
(决定是否改变或创建一个新集合而不是改变原始集合)和第三个参数是关闭。
在前一种情况下,当 sort
修改列表时,域 class 被标记为脏,因此在事务关闭时刷新变得迫在眉睫。