IDE & Framework/Spring

[Spring] MyBaits Insert 후 ID 받기 (짧)

Greensky0026 2022. 5. 23. 19:04
반응형

방법은 두가지가 있다.

 

1.

<insert id="insert" useGeneratedKeys="true" keyProperty="serviceId" keyColumn="SERVICE_ID">

	<!-- 생략 -->

</insert>

처럼 사용하는 방법은

useGeneratedKeys="true"를 입력하고 KeyColum은 pk table명을, keyProperty는 해당 pk값을 넣을 변수명을 입력하면 된다. 위의 경우엔

Map 타입을 매개변수로 주었다면 servicdId-pk값 쌍이 map에 추가되고

DTO 객체를 매개변수로 주었다면 DTO의 serviceId 필드값이 pk값이 될 것이다.

 

2.

<insert id="service_insert" parameterType="Service">
	INSERT INTO CP_SERVICE VALUES

		<!-- 생략 -->

		<selectKey keyProperty="id" resultType="Integer">
        	SELECT LAST_INSERT_ID()
        </selectKey>
</insert>

처럼 쓰는방법도 있다. 

파라미터로 넘긴 Service객체에 id가 int타입으로 주입되게 된다.

반응형