mybatis: 7개의 글
Mybatis 1. 익숙한 SQL 쿼리문 사용 가능. 2. 쿼리문을 xml로 분리 가능 3. 복잡한 쿼리문 작성 가능 4 . 비슷한 쿼리 남발 JPA 1. SQL 쿼리문 구현 필요X 2. 구현할 소스코드의 양이 Mybatis보다 상대적으로 적다. 3. CRUD 메소드를 기본적으로 제공. 4. Mybatis는 쿼리가 수정되어 데이터 정보가 변경되면 그에 맞게 DTO또한 수정해야 하는데, JPA는 객체만 변경해주면 된다. 5. 복잡한 쿼리는 사용 불가능(JPQL 또는 Query dsl 사용) 출처 : https://1-7171771.tistory.com/66
스프링 JDBC 프로그래밍 - MyBatis 연동 이 글에서는 Oracle DB 11g를 사용한다고 가정한다. 다른 DB를 사용해도 무방하다. MyBatis - Spring JDBC 프로그래밍을 쉽게 작업할 수 있도록 만든 라이브러리 - Mapper의 역할을 확장하여 쿼리문 작성을 모두 Mapper에서 할 수 있도록 지원한다. 의존성 추가 Spring JDBC, Oracle JDBC 드라이버, Apache Commons DBCP와 MyBatis 라이브러리 의존성을 추가한다. org.springframework spring-jdbc 5.1.9.RELEASE com.oracle ojdbc6 11.2.0.3 org.apache.commons commons-dbcp2 2.7.0 org.mybatis mybati..
Spring Boot + MyBatis 설정 방법(HikariCP, H2) 📝 순서 1. 스프링 부트 프로젝트 생성 2. 초기화 스크립트 설정(schema.sql, data.sql) 3. DBCP/DataSource 설정(HikariCP) 4. MyBatis 설정(@MapperScan, XML 위치, CamelCase, Alias, 로그레벨) 5. Model, Mapper 생성 6. 테스트 1. 스프링 부트 프로젝트 생성 MyBatis를 이용한 DB 연동을 위한 새 스프링 부트 프로젝트를 생성한다. 스프링 부트 프로젝트는 IDE를 이용하던지, spring initializr(start.spring.io)를 이용해 생성할 수 있다. 자바는 8로, 의존성은 Spring Web, Spring Data JDBC..
💡 IntelliJ IDEA 2019.3 IntelliJ에서 MyBatis같은 SQL mapper 기반의 framework를 사용할때 SQL mapper xml 파일에서 'No data source are configured to run this SQL and provide advanced code assistance.' 이나 'SQL dialect is not configured.' 라는 warning이 검출될 수 있다. Warning(경고) 이므로 무시해도 개발하고 실행하는데 문제는 없다. 하지만 IntelliJ에 SQL dialect와 data source를 설정해주면 해당 database에 대한 코드 검증, SQL 문법 검사와 자동 완성 등의 기능이 지원된다. 별도 설정 없이 경고만 끄는 방법부터..
1. 엘리먼트 : 루트 엘리먼트 namespace : 유일한 id 만드는데 도움을 준다. ex. 네임스페이스.id : select 구문에 사용 id : 필수속성, 유일한 id를 써야함 parameterType : 인자 타입, 보통 패키지까지 안쓰고 로 간결하게 씀. resultType : 필수속성, select의 결과로 반환된 resultSet이 매핑될 객체의 타입 : insert 구문에 사용 id parameterType keyProperty resultType : update 구문에 사용 id parameterType : delete 구문에 사용 id parameter : select문에서 resultType 대신 resultMap 을 사용 가능하다. 검색 쿼리가 단순 테이블 조회가 아닌 join 구..
1. 마이바티스란? 객체지향 언어인 자바의 관계형 데이터 베이스 프로그래밍을 좀더 쉽게 할수 있게 도와주는 개발 프레임워크이다. 자바는 jdbc api 를 제공해주지만, 이런 JDBC를 이용하면 1개 클래스에 반복된 코드가 존재, 한 파일에 java언어와 sql언어가 있어서 재사용성 등이 안좋아지는 단점이 있다. Mybatis는 jdbc의 이러한 단점들을 개선했으며, 개발자가 작성한 SQL 명령어와 자바 객체를 매핑해주는 기능을 제공하며, 기존에 사용하던 SQL 명령어를 재사용한다. 특징 한 두줄의 자바 코드로 DB 연동을 처리 SQL 명령어를 자바 코드에서 분리하여 XML 파일에 따로 관리 2. Ibatis 와 Mybatis Ibatis는 아파치 프로젝트였을때 이야기고, 구글로 넘어가면서 Mybatis..
INTRO iBATIS를 사용하는 중에 MyBatis와 쿼리문 실행 리턴결과가 다른것을 알았다. 따라서 잊지않기위해 정리해놓으려고 한다. iBATIS와 MyBatis의 리턴결과 차이 iBATIS MyBatis SELECT SELECT문에 해당하는 결과 SELECT문에 해당하는 결과 INSERT NULL 1(다중 INSERT도 마찬가지) UPDATE 1 UPDATE된 행의 갯수 반환(없으면 0) DELETE DELETE된 행의 갯수 DELETE된 행의 갯수(없으면 0) 출처: https://sdevstudy.tistory.com/19 [.]