今天是刘小爱自学Java的第110天。
感谢你的观看,谢谢你。
话不多说,开始今天的学习:
事先说明:关于今天的搜索功能实现。
并没有使用到倒排索引这样的主流搜索技术,就一个普通的模糊查询。
在此之前,先学一个小的知识点,sql语句动态拼接。
一、sql语句动态拼接
我们编写sql语句,一般都是通过预编译查询,使用问号这个通配符”?“
但是有的时候会存在某个参数不存在的情况,比如说这一次查询前端传来了3个参数,下一次却只传了2个参数。
面对这个问题,那该怎么办呢?
就需要使用到sql语句的动态拼接了,代码编写如下:
①sql语句中的cid这个参数是不确定的,有时有,有时可能没有。
②StringBuilder的使用
先将sql语句中确定的部分存放到StringBuilder中,再创建一个集合存放参数。
③对cid做出判断
如果cid不为空且存在,就在sql语句中拼接“ and cid = ?”,同时将cid存入参数集合