본문 바로가기

Spring/Mybatis

(2)
[Mybatis]Spring쇼핑몰 프로젝트 - selectKey 태그로 auto increment / currval 값 가져오기 판매자 기능 중 상품을 업로드할 때 아래와 같은 순서로 데이터를 입력해야한다. 1. goods테이블에 상품정보 데이터 insert 2. option테이블에 상품 옵션정보 데이터 insert 여기서 option테이블은 goods테이블의 gds_num(AI, PK)를 fk로 참조하고있다. gds_num은 pk이기 때문에 insert가 끝난 뒤 select를 통해 값을 받아오기가 힘들다. 그렇기 때문에 하나의 요청에서 1번 insert가 끝난 직후 auto increment / currval 값을 돌려받고, 그 값을 setter메소드로 값을 설정하여 2번insert를 수행해야 한다. insert의 경우 retrun값은 1 또는 0이기 때문에, selectKey 태그를 활용하여 auto increment / c..
[MyBatis] Spring쇼핑몰 프로젝트 - Mapper에 parameter 여러개 넘기기 VO로 묶여있지 않거나, 타입이 다른 복수의 parameter들을 전달할 때 HashMap 형태로 값을 보낼 수 있다. 1. 상품문의Service.java 판매자 페이지에서 상품 문의페이지를 출력하기 위한 service이다. 상품문의Service 에서 mapper로 전달할 parameter는 where절에 넣을 String 형태의 'sel_name(판매자명)'과 페이징 처리를 위해 limit에 넣어줄 int형태의 'pageIndex'가 있다. sel_name은 현재 로그인한 member정보중 판매자 테이블에서 왜래키로 사용하고있는 mem_num으로 판매자정보를 불러왔고, pageIndex는 페이지별로 결과값을 10개씩 받아올 수 있게 했다. 이 둘은 데이터타입이 다르기 때문에 parameterType을 ..