MyBatis 12

resultMap.

일단 PartyVO는 N이라고 가정한다. 태그 안의 내용은 M , 즉 N :M의 관계에서 M을 나타낸다. 태그 안의 내용은 분기점을 나타나는데 즉 해당 컬럼이 하나의 상수라고 생각함이 편하다. 해당 컬럼의 값여부를 판단하여 태그에 따라 을 분기한다. 태그 속성의 extends 속성에 따라 상속관계가 정의되어 있어 해당 resultMap을 상속받아 맵핑한다. 마이바티스는 getter setter 로 작동하기 떄문에 객체생성이 우선된다. 그러므로 매개값없는 생성자는 반드시 필요하다.

MyBatis 2020.09.08

log4jdbc-log4j2

MyBatis 는 내부적으로 JDBC 의 PreparedStatement를 실행하여 SQL 을 처리한다. 그렇다면 파라미터는 자연스레 ? 로 치환된다는 이야기 같은데. 쿼리가 길거나 서브쿼리가 이어질 경우 일일히 MySQL워크벤치나 SQL 디벨로퍼를 열어 확인하는 것을 번거롭다. 그렇기에 사용하는게 jdbc 로깅 라이브러리다. org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4 1.16 해당의존을 설정하고, 해야할 작업은 1. 로그 설정파일을 추가한다. 2. JDBC연결정보를 추가한다. src/main/resources 폴더에 log4jdbc.log4j2.properties 파일을 작성한다. log4jdbc.spylogdelegator.name=net.sf.log4jdbc..

MyBatis 2020.08.02

MyBatis 에서의 자동증가 (Auto-Increatement, sequence) 값 가져오기.

참고문서 : https://taetaetae.github.io/2017/04/04/mybatis-useGeneratedKeys/ mybatis insert/update 쿼리실행후 결과 가져오기 Select문이 아닌 다른 SQL Query(insert, update 등) 를 실행하고서 결과를 봐야하는 상황이 생긴다. 정확히 잘 수행되었나에 대한 확인. 어떻게 쿼리가 잘 수행되었나를 확인하는 방법은 다음과 같다.※ taetaetae.github.io 꿈꾸는 태태태의 공간 님 의 문서 참조 입니다. Mysql, MariaDB 에서 제공하는 자동증가 컬럼(Auto-Increament Cloumn)을 지원할 경우, VO 객체의 키 값에 대입하는 Property로 insert,update시 자동증가 컬럼 값을 가져..

MyBatis 2020.07.21

log4j.xml

STS 툴로 프로젝트를 생성하면 LOG4J 와 SLF4J 인가 징검다리 역할을 하는..녀석의 의존이 기본적으로 깔리고 리소스파일에 log4j.xml 설정이 되어있다. 허나 내가 테스트를 시도해볼떄마다 log 레벨을 수정해도 INFO레벨로만 출력될 뿐 마이바티스가 제공하는 로그는 나오지를 않았다. 참고문서 : http://dveamer.github.io/java/Log4j2.html 이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함.. 님 의 글을 참고로 알게 되었다. src/main/resources 에 위치한 파일들이 빌드시에 Maven에 의해서 class path로 이동됩니다. Configuration 파일들을 src/main/resources 에 위치시켜서 적용시키는 것이 일반적인 방법입니다. 테스트 코..

MyBatis 2020.07.18

Mybatis, 테이블 연동과 기본적인 DML 조작

Junit으로 테스트를 해보면서 mapper 파일을 이리저리 조작해보면서 기본적 DML 조작을 성공시켰다. 기록으로 남겨두어야, 까먹지 않을거라고 생각한다. Mapper.xml SELECT * FROM MEMBER INSERT INTO MEMBER (EMAIL,PASSWORD,NAME,REGDATE) VALUES(#{email}, #{password}, #{name}, #{regdate}) SELECT * FROM MEMBER WHERE EMAIL =#{email} DELETE FROM MEMBER WHERE EMAIL=#{delete} MemberDAO package com.soomin.dao; import java.util.List; import org.apache.ibatis.annotations...

MyBatis 2020.07.18

4.Java 에노테이션으로 MyBatis 연동 및 테스트

금일 남는 시간동안 열심히 자바 에노테이션으로 MyBatis연동을 해보았는데, 기억도 되살리고 자바로 처음 연동해보고 굉장히 감회가 새롭다. :) package com.soomin.dto; import java.sql.SQLException; import java.util.List; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import com.soomin.vo.MemberVO; @Mapper @Component @Transactional(rollbackFor = S..

MyBatis 2020.07.13

3.MyBatis를 이용한 데이터 조회와 연동-log

sts로 스프링 레거시 프로젝트 >MVC 패키지를 만들고 pom.xml을 열어보다 문득 요상한 것을 발견했다. org.springframework spring-context 4.1.0.RELEASE commons-logging commons-logging 의 자식태그로 태그가 있고 또 후손태그로 태그가 있는데 이안에 특정 모듈이 정의 된 것 처럼 보이는 것이다... 이게 뭐일까..하고 찾아보았다. 태그는 메이븐의 의존 설정 제외 태그이다. 즉 이 예에서는 spring-context-4.1.0.jar 파일은 commons-logging.jar 파일에 의존하고 있기에 의존전이가 일어난다는 것 같다. 그것을 제외시키는 태그로 dependency안에 쓰이나보다. 했다. spring-context를 사용하지만 로..

MyBatis 2020.07.11