多未知条件的jdbc查询
2015-07-08 22:55
309 查看
List<Object> params=new ArrayList<Object>();//参数list
.....
if(!(btype.equals("请选择"))) {
sql+=" and btype=?";
params.add(btype);
}
if(!(bpricea==null||bpricea=="")) {
sql+=" and bprice>=?";
params.add(bpricea);
}
if(!(bpriceb==null||bpriceb=="")) {
sql+=" and bprice<=?";
params.add(bpriceb);
}
List<Bookinfo> list=dao.getDestineList(sql, params);
这么一小段代码,却给我一个始料不及大大的麻烦,因为一开始我写的是if(bpricea!=null||bpricea!=""),然后发现这两个price的if总是会被执行,后来改成开头所示就可以了。回头来看,从数学上的交集并集补集来看,两者的确是不等价的。
.....
if(!(btype.equals("请选择"))) {
sql+=" and btype=?";
params.add(btype);
}
if(!(bpricea==null||bpricea=="")) {
sql+=" and bprice>=?";
params.add(bpricea);
}
if(!(bpriceb==null||bpriceb=="")) {
sql+=" and bprice<=?";
params.add(bpriceb);
}
List<Bookinfo> list=dao.getDestineList(sql, params);
这么一小段代码,却给我一个始料不及大大的麻烦,因为一开始我写的是if(bpricea!=null||bpricea!=""),然后发现这两个price的if总是会被执行,后来改成开头所示就可以了。回头来看,从数学上的交集并集补集来看,两者的确是不等价的。
相关文章推荐
- 算法复习之插入排序
- 字节对齐
- 给Magento新增JSON-RPC类型的Api适配器(adapter)
- C++中const的实现机制深入分析
- Linux 安装配置 JDK 8
- 6.1-4
- 黑马程序员java类和对象的关系
- DS8K存储分配空间给主机方案
- jsp (五) <jsp:useBean> scope
- Android系列教程之五:Activity的生命周期
- C++模板源代码的三种组织方式
- 字符流总结--Day21
- 黑马程序员 java模板方法模式
- AWS使用心得:当初我曾错过的那些宝贵经验
- Arduino 2048 游戏
- poj 2002 Squares Hash
- Unknown initial character set index '45' received from serve
- ASP.NET MVC Boilerplate简介
- 被忽视但很实用的那部分SQL
- js遇到这样基础题,看你能不能作对呢