목표: 추천 번호를 DB에 저장하자!
단계
1. DB 테이블 설계
2. MyBatis 매퍼, XML 정의
3. 서비스 레이어 구현
4. 메인에 통합
datagrip에 가서
CREATE TABLE RECOMMENDATION (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
strategy VARCHAR(50) NOT NULL,
ratio_option VARCHAR(10),
numbers VARCHAR(50) NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
BIGINT
: 최대 약 9조까지 표현할 수 있는 정수형
AUTO_INCREMENT
: 이 컬럼이 자동 증가 하도록 설정
PRIMARY KEY
: id를 기본 키로 설정
VARCHAR(N)
: 최대 N자까지 저장할 수 있는 가변 길이 문자열 타입
NOT NULL
: 반드시 값이 들어 있어야 한다.
빈칸 금지
DATETIME
: 날짜, 시간 모두 저장
CURRENT_TIMESTAMP
: 행이 생성된 시점의 날짜, 시간 자동 기록
MAPPER
:java, sql 사이를 연결해주는
mapper 인터페이스
:java 메서드를 호출하면, mybatis가 연결된 sql을 찾아 실행해 주는 중간자 역할
public interface RecommendationMapper {
void insertRecommendation(Recommendation rec);
}
insertRecommendation(...)을 호출하면 mybatis가 이 인터페이스와 이름이 같은 sql 찾아 실행
xml 매퍼
:실제 sql 문장 작성해두는 곳
인터페이스의 메서드 이름(insertRecommendation)과 id 가 딱 일치해야 mybatis가 연결해줌
인터페이스 이름 = xml매퍼 이름
인터페이스 메서드 이름 = xml 매퍼 id