public Object insert(String statementName, Object parameterObject)
这个函数返回一个Object类到底是什么意思 API文档里一个字都没写 帮我解释下

解决方案 »

  1.   

    首先确定这种情况非常少使用,一般这个方法返回回来的都是NULL,有些地方也有使用,比如插入后。想直接就得到一些值,也就是插入后得到一个SELECT语句的值,此时配置文件格式大致如下:
    <insert id="..." parameterClass="....">
       INSERT ... VALUES(...)
       <selectKey resultClass="..." keyProperty="..." >
         SELECT ...
       </selectKey>
    </insert>通过源码查看,你可以发现这个结果集只能得到一行记录,所以一般查看的是一些插入的关键字,如在SQLSERVER中如果有序列号(如果该字段为ID),就可以将SELECT语句写成:
    SELECT SCOPE_IDENTITY() AS ID
    或者使用
    SELECT @@IDENTITY AS ID此时就可以获取到当前插入的序列号码,当然你也可以获取其他的记录信息。
      

  2.   

    好像Hibernate里也有类似的方法,尤其是那种自动生成主键的,插入后想得到主键。
      

  3.   

    3楼说的是序列吧?
    我也在用iBATIS顶下。