前题:mongo集合中存储的是NumberLong类型的时间戳,业务上需要用到时间相关函数,比如$month,$year等。
问题:现在想到了一个办法,就是在$project的时候使用$add函数将时间戳转换掉,在spring-data-mongo中可以使用andExpression()方法,该方法支持SPEL表达式,也就是andExpression(a+b)可以转换成{ $add : [$a, $b] }。
原始mongo写法是:{$add: [new Date(0),"$dateTimestamp"],现在就不知道怎么转换成spring-data-mongo的写法