Hibernate - 从SQL查询中提取参数值

时间:2014-07-31 21:09:31

标签: java sql hibernate parameters

我有一个类根据一些输入条件用不同的值填充Hibernate SQL查询的参数。我想为生成的查询编写测试。到目前为止,我还没有找到一种方法来获取在查询上设置的参数值。我查看了生成的Query实现(在本例中为SQLQueryImpl),并且有一个名为getParameterMetadata()的方法,看起来它可能会给我一些东西,但我找不到任何东西。

我希望能够做到这样的事情:

assertEquals("some value", query.getParameterValue(parameterName));

有办法做到这一点吗?

编辑:

我只是看了一会儿,我找到了一个

query.getQueryParameters(map).getNamedParameters()

返回一张地图。我必须假设地图包含参数及其值。如果我错了,请纠正我。

1 个答案:

答案 0 :(得分:0)

我实际上并没有考虑这样一个事实:因为我正在测试,我可以简单地模拟查询并期望特定的参数。