[mybatis] 객체 안에 객체 매핑하기
객체를 필드로 사용하는 경우 mybatis에서 <association>
을 활용할 수 있다.
객체를 필드로 사용하는 경우 mybatis에서 <association>
을 활용할 수 있다.
mybatis에서 update시 모든 컬럼에 if 조건물을 걸어야할때가 있다.
개인정보와 같은 경우 회원 탈퇴를 할때 여러 테이블에 있는 해당 사용자 정보를 전부 다 삭제해야한다.
이를 한꺼번에 아래 코드처럼 처리할 수 있다.
방금 insert한 autoincrement가 걸린 PK값을 바로 사용하고싶다면 어떻게 해야할까?
두가지방식이 있다.
동일한 테이블에서 컬럼명에 따라 값이 달라지는 update 구문을 만들고 싶었다.
물론 컬럼명마다 update구문을 만들 수 있지만 동일테이블인데 그건 너무 비효율적이다.
그래서 단순하게 아래 쿼리를 작성한 뒤 String값 2개 name과 수정할이름
을 넘겨주었다.
DB Mapper를 코딩하면서 일회성으로 쓸 쿼리를 계속 만들어야하는가에 대한 의문이 생겼다.
예를 들어 아래와 같은 UserDTO가 있다고하자.
user테이블에 idx, name, dept_code만 넣고 싶다. dept_code는 department테이블에서 user_id로 알아낼 수 있다.