概述
一 概述
1.什么是动态查询?
从多个查询条件中随机选择若干个组合成一个DQL语句进行查询,这一过程叫做动态查询。
2.动态查询的难点
可供选择的查询条件多,组合情况多,难以一一列举。
3.最终查询语句的构成
一旦用户向查询条件中输入数据,该查询条件就成为最终条件的一部分。
二 基本原理
1.SQL基本框架
无论查询条件如何,查询字段与数据库是固定不变的,这些固定不变的内容构成SQL语句的基本框架,如
select column... from table。
2.StringBuilder形成DQL
获取表单输入,如果请求参数非空,根据该请求参数生成查询条件,如“name=?”,“age>?”,将查询条件追加到基本框架中。利用StringBuilder来追加查询条件,这时出现一个问题,怎么判断生成的查询条件中是否需要添加“and”?
如果该查询条件是第一个查询条件,不需要添加"and",否则需要添加“and”。问题变得复杂起来,每一次生成查询条件时都需要判断前面是否存在查询条件。
我们可以考虑在SQL基本框架中添加一个查询条件,该查询条件的存在不影响查询结果,只充当占位角色,避免动态添加查询条件时判断是否需要添加“and”。根据这些要求,这一查询条件必须恒为真,这里我们取“1=1”,SQL基本框架就变成了
select column...from table where 1=1
每一个动态查询条件前段都添加“and”。
最后
以上就是甜蜜草丛为你收集整理的JAVA与mysql动态字段查询_Java中JDBC实现动态查询的实例详解的全部内容,希望文章能够帮你解决JAVA与mysql动态字段查询_Java中JDBC实现动态查询的实例详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复