在我们的项目中,我们使用mybatis,并在字符串上有一个自定义类型处理程序,默认情况下会从结果中剥离html和其他内容。我们可以通过在结果映射中设置一个不同的类型处理程序来覆盖它。
但是,我现在遇到了在select中使用动态查询的情况,如下所示
<select id="executeQuery" resultType="String">
${sql}
</select>现在我不希望结果的html被剥离,所以我想使用一个自定义的类型处理程序。通常我会在结果映射中这样做,但问题是我不知道将在查询中使用的列的名称。有没有解决这个问题的办法,我可以在这个结果上使用另一个类型处理程序?
发布于 2017-01-07 00:10:47
对于遇到这个问题的其他人。最后,我使用了以下变通方法:
SELECT (${sql}) AS value
但是,对于sql语句中可以使用的查询类型,这有一些限制。例如,在ms sql中,不能使用具有order by而没有top、offset或For xml的查询。
https://stackoverflow.com/questions/41503428
复制相似问题