liuzhihu2016
liuzhihu2016
采纳率100%
2016-08-04 02:03 阅读 3.7k
已采纳

ibatis中的select count(*) sql执行了,但是没有返回结果

java代码:

    @Override
    public int selectUserAll() {
    return (int)getSqlMapClientTemplate().queryForObject(
                "lz_user.ibatorgenerated_selectCount");
    }

sql:

  <select id="ibatorgenerated_selectCount" resultClass="int">
    select count(*) 
    FROM lz_user user,
         lz_user_info userinfo,
         lz_user_vip userVip 
  </select>

返回值:
DEBUG 2016-08-04 10:02:00 [java.sql.Connection] - {conn-100003} Connection
DEBUG 2016-08-04 10:02:00 [java.sql.Connection] - {conn-100003} Preparing Statement: select count(*) FROM lz_user user, lz_user_info userinfo, lz_user_vip userVip

DEBUG 2016-08-04 10:02:00 [java.sql.PreparedStatement] - {pstm-100004} Executing Statement: select count(*) FROM lz_user user, lz_user_info userinfo, lz_user_vip userVip

DEBUG 2016-08-04 10:02:00 [java.sql.PreparedStatement] - {pstm-100004} Parameters: []
DEBUG 2016-08-04 10:02:00 [java.sql.PreparedStatement] - {pstm-100004} Types: []
DEBUG 2016-08-04 10:02:00 [java.sql.ResultSet] - {rset-100005} ResultSet

拜求,这个是怎么回事儿,谢谢。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    FiangAsDre GreenRookie 2016-08-04 03:52

    mapper.xml中配置 返回int类型 。这样直接

     <select id="getCount" resultType="long">
         select count(*) from 表
     </select>
    
    点赞 评论 复制链接分享
  • llbbxx_0703 Leonard99559 2016-08-04 02:17

    猜测:返回类型用map试一下。
    我平常用mybatis时,count的返回类型一般是BigDecimal型的。
    从这条信息来看,返回的可能不是int:
    DEBUG 2016-08-04 10:02:00 [java.sql.ResultSet] - {rset-100005} ResultSet

    点赞 评论 复制链接分享

相关推荐