1. aliases model
public class Board {
private int id;
private String title;
private String content;
//getter, setter 생략
}
2. board 테이블 SQL
CREATE TABLE `board` (
`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`title` VARCHAR(100) NULL DEFAULT NULL,
`content` VARCHAR(3000) NULL DEFAULT NULL,
`writer` VARCHAR(100) NULL DEFAULT NULL
)
3. @Mapper 어노테이션이 선언된 Mapper 인터페이스
import com.example.demo.model.Board;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface BoardMapper {
void saveBoard(Board board);
}
4. mapper-board.xml
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.BoardMapper">
<insert id="saveBoard" parameterType="Board" useGeneratedKeys="true" keyProperty="id">
insert into board (
title,
content
) values(
#{title},
#{content}
)
</insert>
</mapper>
userGeneratedKeys="true"로 해주고 keyProperty에는 auto_increment로 선언된 column 명을 입력해주면 됩니다.
BoardMapper의 saveBoard 메소드를 실행하면 board가 insert되고 파라메터로 넘겼던 Board 객체의 id 멤버 변수에 key 값이 입력됩니다.
'IT > mybatis' 카테고리의 다른 글
[mybatis] mybatis 동적 SQL 만들기 (0) | 2021.02.01 |
---|