在webproject中,我有一个复杂的表单来构建动态查询。当我编写这段代码时,我只有JPA 1(没有Criteria API)所以我动态地构建了查询字符串(但仍然使用绑定参数)。这到目前为止工作正常。现在我想保存查询(而不是结果),以便用户以后可以重新运行相同的查询。
理想主义,我只是将查询字符串存储在数据库中。构建查询时,我可以确保只使用ID(不是“where user =:user”,而是“where user.id =:userid”)。
由于参数的输入来自用户,我喜欢使用查询参数,以避免'little bobby tables'。
有一种简单的方法吗?
答案 0 :(得分:0)
我不确定为什么这是一个问题因为我认为没有理由让你创建一个表来存储查询。 棘手的部分必须在 1)从某个地方获取可用参数。如果需要,也许你可以将它存储在参数表中。 2)确定要设置的参数。只需在查询查询中找到all:参数,查看是否有可用的参数并在查询中设置它。
我错过了什么?