JAVA后台动态拼接查询语句 -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

JAVA后台动态拼接查询语句

蛮大人123 2016-02-26 11:24:52 2302

以前那个系统因为查询效率非常低下,所以要重做。
查询的字段,和查询条件都是要动态拼接的。因为之前的做法是把所有要显示的字段和查询的条件都写在一个视图里,查询的时候直接拼接where 条件就行了。基础视图查询了太多的字段(很多字段还是用了函数),关联了太多的表,倒是几乎没子查询。
现在他们想把基础视图简化,只查列表显示的常用字段,然后查询时去动态的拼表连接JOIN和WHERE条件,我想了半天也没想出来应该怎么做。主要就是,查询条件来自不同的表,以前可以直接拼field1 = ? And field2 in (?,?...),可是现在fields都在了不同的表,怎么办呢?谁能提供一个好思路,谢了!

Java
分享到
取消 提交回答
全部回答(2)
  • 1405946530240121
    2019-07-17 18:48:04
    采用String类的format()方法,将查询语句以模板的形式写好,动态传入参数。
    0 0
  • 蛮大人123
    2019-07-17 18:48:04

    可以用ibatis框架来做,将改变的值来作为参数进行传递。并且在ibatis里,可以根据条件来添加where字句中的约束

    0 0
添加回答
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题