1、使用Map
例如“控制台提示错误Incorrect result size: expected 1, actual 0”。
问题原因参考(1)字符串的Jdbctemplate查询:EmptyResultDataAccessException:结果大小不正确:预期1,实际0网页链接
问题原因参考(2)JdbcTemplate queryForObject结果大小不正确:预期为1,实际为0网页链接
2、推荐使用jdbcTemplate.query或List
/**
*
* @Title: querySpxxMap_dbBySsflbm
* @Description: TODO(根据税收分类编码、企业id,联查商品信息表、税收分类编码表的,商品id+商品名称+规格型号+计量单位+税率+税收分类编码)
* @param ssflbm
* @param qyid
* @return 设定文件
* @return Map返回类型
* @throws
*/
public List
Object...args:这个格式的参数是变长参数,相当于是一个数组,并且这种格式的参数只能放在最后,也就是jdbcTemplate.queryForMap(String sql,Object...args,int[]argTypes),这个形式是不合法的。
调用时候这样用就行了:jdbcTemplate.queryForMap(memberSql.toString(),1,"abc");
为什么要这么写呢?如果只是单纯的传入值的话可以不用键值对啊;
Connection conn=连接方式;
PrepareStatment pst=conn prepareStatment(Sql语句);
按照你上面的问号的话我就可以这么传:
pst.setString(1,card_num);
其中1代表第一个问号,后面的card_num则是String变量;
如果传入整型好像还有setInteger方法把