jdbctemplate返回数据实体(JdbcTemplate.queryForObject 返回值怎么判断)

本文目录
- JdbcTemplate.queryForObject 返回值怎么判断
- Spring 的 jdbcTemplate 对于那些只返回简单类型的查询怎么处理
- Spring的JdbcTemplate查询数据库时,使用queryForList().get(0)返回单行查询时会产生异常,请问如何避免
JdbcTemplate.queryForObject 返回值怎么判断
org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0
spring做了封装, queryForObject回去数据库查询一条记录,如果没有记录符合查询条件,或者有多条记录符合条件,都会报出错误,
只不过 expected 1, actual 0 意味这没有记录符合这查询条件.
expected 1 可以理解为期望有一条且只有一条符合条件的记录,
actual 0 意味着,没有记录符合.
如果 actual * , * 为 》 1 ,那么也会出错.(这个方法就是这么规定的..)
可以这样写,假设一个简单的表,user.字段有:
id 和 name.
queryForInt(select count(1) as c from user where id = ?)
在结果集中取 c 的值 ,如果大于0,就可以认为有1条或者多条记录.
Spring 的 jdbcTemplate 对于那些只返回简单类型的查询怎么处理
queryForInt只是spring提供的一些简易的方法,你可以利用它的模板--回调模式来获得任何你想要的结果或者数据类型的,具体的你可以使用execute(String
sql, PreparedStatementCallback action)
这个看看,实现PreparedStatementCallback回调接口中的doInPreparedStatement方法,它的返回值是一个Object对象,你可以根据自己的需要进行转换
Spring的JdbcTemplate查询数据库时,使用queryForList().get(0)返回单行查询时会产生异常,请问如何避免
一:queryForList()是需要传递参数的,你这里没有传参。
二:queryForList()方法返回的是个list集合,你在queryForList().get(0)之前,先判断list中是否有值,可以用(list.size()》0)这样即可,一般就不会出现异常。

本文相关文章:
word2003目录怎么做(word2003如何自动生成目录)
2026年10月10日 20:50
word页码从任意页开始(word中如何设置页码从指定页开始)
2026年10月1日 05:30
microsoft word打印在哪里(word打印在哪里)
2026年8月30日 00:00
免费的u盘修复工具(u盘数据恢复 for mac版,相信我,这款免费工具你会爱不释手的)
2026年8月6日 23:40
macromedia fireworks8序列号(Macromedia Fireworks 8序列号)
2026年7月23日 14:20
undergraduate degree(bachelor和undergraduate有什么区别么)
2026年10月3日 13:00
wordpress好用的插件(wordpress pdf插件哪个好用)
2026年9月24日 12:50
更多文章:
获取innertext(在js中如何获取input标签的text值)
2026年10月14日 02:00
跨文件vlookup怎么用详细步骤(vlokkup函数怎么用)
2026年10月14日 01:30
伦勃朗老年自画像(《大师经典伦勃朗》封面上的这张图叫什么名字急!)
2026年10月13日 22:40
jsp转发和重定向(一个jsp页面中的链接跳到别一个jps页面,这属于重定向还是转发)
2026年10月13日 20:20
fscanf返回值被忽略怎么解决(c语言,忽略scanf的返回值怎么解决)
2026年10月13日 19:50

