目标:在试题的问题和四个选项多个字段中查找关键词获得相应记录。且在后端查找函数中使用预编译语句。多字段查找:使用CONCAT(…,…,…)预编译语句编写:
String sql="select * from test where CONCAT(question,A,B,C,D) like %?%";//错String sql="select * from test where CONCAT(question,A,B,C,D) like '%'?'%'";//未得到结果String sql="select * from test where CONCAT(question,A,B,C,D) like CONCAT('%',?,'%')"//成功获得结果
后端查询函数部分代码:
QueryRunner queryRunner=new QueryRunner(dbutil.dataSource);String sql="select * from test where CONCAT(question,A,B,C,D) like CONCAT('%',?,'%')";Object[] params={keyword};items=queryRunner.query(sql,new BeanListHandler<>(Test_item.class),params);if(items==null) System.out.println("什么也没查到");