因此,我尝试使用h2的json对象函数为h2编写一个自定义查询。json\u对象使用 JSON_OBJECT(key:value)
因此,作为spring存储库中的一个简单示例,我编写了一个如下的查询 @Query(value = "SELECT JSON_OBJECT('id':1)", nativeQuery = true)
在h2控制台中执行相同的查询时,它会按预期操作,但在spring中冒号(“:”)被视为变量插入的特殊字符,因此在测试它时,它会尝试将以下值Map为变量,这当然会引发错误。
我试过用这种方法逃出结肠 \\
以及 \\\\
在冒号和值之间加一个空格,但似乎没有帮助。
关于如何转义字符或者让spring认为冒号是可以接受的字符,有什么想法吗?
1条答案
按热度按时间a5g8bdjr1#
实际上,您可以简单地使用替代语法
JSON_OBJECT(KEY 'id' VALUE 1)
,不需要使用转义\\:
,转义序列会降低查询的可读性。