有时候会遇到这种需求
例如select * from person where name = ? and age = ?
有时候会根据name查询那么就需要剔除age这个条件反之亦然,虽然这个需求在jfinal中能通过在sql模版中通过判断实现(所以说是打辅助),但是难免会遇到不用sql模版的,那么这就麻烦了,在代码中写很多判断语句来进行拼装sql语句。
于是乎,我就写了个基于druid的工具类,能够按照传过来的名称进行动态剔除不续要的条件,用起来还是挺方便的(虽然性能我没这么考量过0.0)。
不就是个工具类嘛,为啥变成了项目?
核心的类其实只有4,5个,我也不想变成项目的,由于考虑这个工具需要依赖druid的jar包,如果只是单独的需要解析sql语句的话,那么就划不来了,所以我把druid解析sql部分的单独的拿了出来。
如果有需要的同学请移驾到
https://github.com/zuonima/sql-utils
多表连接,嵌套查询,复杂查询都支持。
目前只支持mysql,可能其他的数据库会有一点BUG。
有问题或者见解欢迎指正,接受狂喷!
本人萌新,求大佬保护!