美文网首页我爱编程
MyBatis-Oracle-selectKey返回主键

MyBatis-Oracle-selectKey返回主键

作者: 淡淡的伤你 | 来源:发表于2017-07-12 15:40 被阅读208次

    SelectKey在Mybatis中是为了解决Insert数据时不支持主键自动生成的问题,他可以很随意的设置生成主键的方式。

    Mapper(Oracle)

    <insert id="insertWxshLogOut"  parameterType="java.util.HashMap">
        <selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
            select wxsh_seq.nextval as id from dual
        </selectKey>
        INSERT INTO WXSH_LOG_OUT
        (ID,
         OUT_NO,
         USER_ID,
         FILE_NAME,
         CREATE_AT,
         IP,
         CONTENT,
         OUT_NUM,
         UNIT_NO,
         STATUS)
        VALUES
            (#{id},
             #{out_no},
             #{user_id},
             #{file_name},
             SYSDATE,
             #{ip},
             #{content},
             #{out_num},
             #{unit_no},
             #{status})
    </insert>
    

    Service

    public int addWxshLogOut(Map map) {
        try {
            DataSourceTypeManager.set(DataSources.GJT);
            welfareConfirmMapper.insertWxshLogOut(map);
            return Integer.parseInt(String.valueOf(map.get("id")));
        } catch (Exception e) {
            logger.error(e.getMessage());
        }
        return 0;
    }
    

    map中会增加返回的主键id

    相关文章

      网友评论

        本文标题:MyBatis-Oracle-selectKey返回主键

        本文链接:https://www.haomeiwen.com/subject/mkpbhxtx.html