我之前是这样写的:
首先定义出QueryRunner
private QueryRunner runner=new QueryRunner(JDBCUtil.getDruidDataSource());
这里的JDBCUtil.getDruidDataSource()获取了DruidDataSource的实例
//这里按照了sql语句的写法,但是执行时却报错了
String sql="select * from shopping where model like ‘%?%’";//
List<Shopping> queryResult = runner.query(sql, new BeanListHandler<Shopping>(Shopping.class), str);
然后发现要这样写:
@Override
public List<Shopping> searchGoods(String GoodsName) {
//这里使用字符串拼接,不能在下面字符串中直接写%?%,直接 写的话%?%会被识别为一个东西来处理
String str="%"+GoodsName+"%";
String sql="select * from shopping where model like ?";//
List<Shopping> queryResult = runner.query(sql, new BeanListHandler<Shopping>(Shopping.class), str);
return queryResult;
}