在表中部分ID會使用創建Oracle的序列來賦值,使用mybatis 插入時需要把ID賦值為遞增序列的當前
1.創建序列
--創建序列的語法 序列就是序號,每次獲取的時候就會自動增加 CREATE SEQUENCE 表名.序列名 INCREMENT BY 1 START WITH 1 -- 從1開始計數 NOMAXvalue -- 不設置最大值 NOCYCLE -- 一直累加,不循環 CACHE 10; --設置緩存cache個序列,如果系統down掉了或者其它情況將會導致序列不連續,也可以設置為---------NOCACHE
2.在mybatis 配置文件中增加對序列的取值賦值到ID上 (resultType="java.lang.Integer" 是id的類型 在插入時實現遞增)
<insert id="insert" parameterType="com.zpark.entity.UserEntity"> <selectKey resultType="java.lang.Integer" order="BEFORE" keyProperty="id"> SELECT 序列名 FROM DUAL </selectKey> INSERT INTO User( id,userName,password) VALUES ( #{id,jdbcType=DECIMAL},#{userName,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR}) </insert>