文章标题
2017-07-12 15:39
218 查看
SelectKey在Mybatis中是为了解决Insert数据时不支持主键自动生成的问题,他可以很随意的设置生成主键的方式。
map中会增加返回的主键id
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