gpt4 book ai didi

hibernate - hibernate 查询转义(来自Grails的GORM)-再次

转载 作者:行者123 更新时间:2023-12-02 14:55:28 25 4
gpt4 key购买 nike

我已经看到许多相关的问题,但这些问题都不是我的问题。

一般问题:到底在何处指定了如何在Hibernate中逃脱,特别是对于Grails GORM?

特殊问题:

我要执行此操作:

"WHERE extractValue(field, '//value[@my_attribute=\""+localeStr+"\"]')"

您会注意到,localeStr不会转义,而是包含在另一个字符串中。
如果可能的话,如何使用参数(例如:parameter之类)来转义呢?

谢谢。

最佳答案

Here, I believe, in "bind parameters" section。再加上一般的Groovy转义。

虽然,抱歉,尚不清楚-逃脱什么?您是否需要localeStr包含一个参数,或者相反,以清除所有可能的参数?

对我来说,删除":""?"应该可以。不过,将不可信的String直接连接到查询中是一个坏主意。

清理String参数的最好方法是,将其作为参数传递:

DomainClass.findAll(
"WHERE extractValue(field, '//value[@my_attribute=:attrValue]',
[attrValue: localeStr])")

参见 findAll() doc

关于hibernate - hibernate 查询转义(来自Grails的GORM)-再次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6439628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com