模糊查询的sql语句
Java程序中使用的sql语句一直不明白是什么作用,在网上搜索了一些资料,看到一篇博客,稍微解答了具体每条代码的作用,因为作者加了详细的注解,可以作为参考
《JavaWeb dao层条件查询(模糊查询)的sql语句》
--------------------- 本文来自 阿顾1234 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u010452388/article/details/80548970
目的:通过一条查询语句能够实现用户所有的条件进行查询
代码
/**
* 通过用户输入的参数,到数据库中查询到商品信息,并以集合的方式返回
* @param pname 传入的查询参数
* @param pdesc 传入的查询参数
* @return 返回一个集合,其集合由实体Product组成
* @throws SQLException
*/ public List<Product> findProByIndis(String pname, String pdesc) throws SQLException {
//创建dbutils下的QueryRunnner
QueryRunner runner = new QueryRunner(C3P0Utils.getDataSource()); //☆☆☆注意where 1=1后面一定要留空格,否则和后面进行字符串拼接后,到数据库查询会出现错误
String sql = "select * from product where 1=1 "; //创建一个集合用来存储查询的参数,因为我们不清楚客户到底输入几个参数,所以用集合来存放
List<String> list = new ArrayList<String>(); if (pname != "") { //如果用户输入的pname不为空,那需要进行字符串拼接
sql += "and pname like ? ";
//将用户输入的参数添加到集合
list.add("%" + pname + "%");
}
if (pdesc != "") {
sql += "and pdesc like ? "; list.add("%" + pdesc + "%");
} //最后将集合转化成数组
Object[] params = list.toArray();
//调用runner对象的query查询方法,并将集合返回
return runner.query(sql, new BeanListHandler<Product>(Product.class), params);
注意点:
这里作者说一定要加上空格是对的,之前敲的代码都是在sql语句最前面加上空格,是一个道理
模糊查询的sql语句的更多相关文章
- 查询拼接SQL语句,多条件模糊查询
多条件查询,使用StringBuilder拼接SQL语句,效果如下: 当点击按钮时代码如下: private void button1_Click(object sender, EventArgs e ...
- mybatis模糊查询防止SQL注入
SQL注入,大家都不陌生,是一种常见的攻击方式.攻击者在界面的表单信息或URL上输入一些奇怪的SQL片段(例如“or ‘1’=’1’”这样的语句),有可能入侵参数检验不足的应用程序.所以,在我们的应用 ...
- ASP.NET实现列表页连接查询 拼接sql语句 绑定grivdView
ASP.NET实现列表页连接查询 拼接sql语句 如图效果: 基本需求:1.当页面第一次加载的时候默认查询一个月时间(或者说是登陆者所属权限的所有数据)的数据绑定到gridView 2.添加查询条件时 ...
- MySql实现分页查询的SQL,mysql实现分页查询的sql语句 (转)
http://blog.csdn.net/sxdtzhaoxinguo/article/details/51481430 摘要:MySQL数据库实现分页查询的SQL语句写法! 一:分页需求: 客户端通 ...
- oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)
先列上我的数据库表格: c_date(Date格式) date_type(String格式) 2011-01-01 0 2012-03-07 ...
- mysql按年度、季度、月度、周、日统计查询的sql语句
本文介绍一些mysql中用于查询的sql语句,包括按年度.季度.月度.周.日统计查询等,有需要的朋友,可以参考下. 一.年度查询 查询 本年度的数据 SELECT * FROM blog_arti ...
- MySQL5.6 怎样优化慢查询的SQL语句 -- SQL优化
上篇:MySQL5.6 怎样优化慢查询的SQL语句 -- 慢日志介绍 在实际的日志分析中,通常慢日志的log数量不少,同一时候同样的查询被记录的条数也会非常多.这里就须要怎样从慢日志查询中找到最有问题 ...
- MySql实现分页查询的SQL,mysql实现分页查询的sql语句(转)
http://blog.csdn.net/sxdtzhaoxinguo/article/details/51481430 摘要:MySQL数据库实现分页查询的SQL语句写法! 一:分页需求: 客户端通 ...
- MySQL5.6 怎样优化慢查询的SQL语句 -- 慢日志介绍
近期有个开发团队抱怨我们平台包括的mysql cluster不行,总是报mysql的"heartbeat Error".分析了他们收集的日志.没有发现mysql cluster节点 ...
随机推荐
- vue {{}}的用法
参考链接:https://blog.csdn.net/cofecode/article/details/78666233
- RH124-3 目录结构_转
在linux里安装的时候,是可以指定某分区装在某文件夹里 目录意义 /bin 存放命令,不可以在装系统单独挂载分区 /home /dev 存放硬件设备 不可以单独挂载分区 /boot 500M 和系统 ...
- jquery获得 当前页面url的变量
(function($){ $.extend({ urlGet:function () { var aQuery = window.location.href.split("?") ...
- sql server代理服务无法启动(SQL Agent):OpenSQLServerInstanceRegKey:GetRegKeyAccessMask failed (reason: 2).
问题:从windows自带的事件查看器中查看到报错信息如下 OpenSQLServerInstanceRegKey:GetRegKeyAccessMask failed (reason: 2). (注 ...
- 【牛客网】Finding Hotel
[牛客网]Finding Hotel 忘记K远点对的剪枝的我有点自闭 事实上我们只要先建一棵KD树出来,维护一下所在的矩形,和子树里的最小值 每次查询的时候如果最小值比查询的值要大的话就退出 当前的答 ...
- 剑指offer57:二叉树的下一个结点
1 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. 2 思路和方法 中序遍历,下一个结点有两种情况 a ...
- wordpress 图片上传时发生了错误,请稍后再试 的解决办法
前一天网站还是好好的,仅一天过后就显示图片无法上传,百思不得其解 上下百度,大多数帖子提供的解决办法对我都不适用,继续搜,最后发现一篇帖子中提到是wp-config的编码格式问题 想到昨天刚好修改了下 ...
- 网络编程[第一篇]基于tcp协议的套接字编程
将服务端-客户端的连接比作双方打电话的过程 2019-07-24 一.客户端 主动的一方: 客户端实例化一个socket对象--> 主动像服务端发送连接请求--> (服务端接受请求后即可进 ...
- idea jetty:run 启动
1.首先pom 文件 <!-- jetty插件 --> <plugin> <groupId>org.mortbay.jetty</groupId> ...
- (十)Activitivi5之启动流程/完成任务的时候设置流程变量
一.启动流程的时候设置流程变量 1.1 案例 /** * 启动流程实例 */ @Test public void start() { Student student=new Student(); st ...