Mybatis - Dynamic SQL
·
DB/MyBatis
🎯오늘 하루는 Mybatis에서 select, DML 문을 작성하는 것에 이어 Dynamic SQL 문법을 배웠다. JDBC보단 훨씬 간결하지 싶으면서도 아직까지는 머릿속에 정리가 되지 않아 어지러워 꼼꼼히 정리하고 눈에 손에 익히는 과정을 거치고자 한다! 📖 정리 1️⃣ Multi Select select * from dept where deptno IN ( 값, 값2, ... ) ⇒ 값의 갯수가 안정해짐 ★ ⇒ 값을 전달 DeptMain.java import java.io.InputStream; import java.util.Arrays; import java.util.HashMap; import java.util.List; import org.apache.ibatis.io.Resources; imp..
Mybatis - 환경설정 및 SELECT 예제
·
DB/MyBatis
Mybatis 프레임워크 🎯 오늘 하루는 SQL을 지나 JDBC부터 조금씩 개념이 흔들리기 시작하는 것 같다. JDBC에 비해 Mybatis는 쉽고 간결하다고 하나 환경설정, 새로운 문법 등 갑자기 한꺼번에 많은 지식들이 들어오다보니 정신이 없는 것은 사실이다. 😂 그래도 환경설정부터 과정을 하나하나 다 캡쳐해서 기록해놓으므로 다시 복습하기에는 좋을 것 같다. 계속 계속 봐야지. 결국은 익숙해지는 방법 뿐 ! 📌 개요 JDBC 사용을 효율적으로, 편리하게, 파워풀하게 사용하도록 만든 프레임워크이다. 즉, 자바 개발자들이 데이터베이스를 쉽게 다룰 수 있도록 도와주는 오픈 소스 ORM(Object-Relational Mapping) 프레임워크이다. 📌 mybatis.org mybatis.org > produ..
트랜잭션(Transaction) 처리
·
DB/MyBatis
📌 트랜잭션(Transaction) ✅ 두 쿼리가 실행되어야 하는 상황이 있다. 첫 번째 쿼리는 문제없이 실행됐지만 두 번째 쿼리에서 문제가 발생하였다. 그렇다면 데이터가 잘못된 상태로 저장된다. 두 쿼리가 모두 정상적으로 실행되어야 데이터의 무결성이 유지되기 때문이다. 그래서 한 개 이상의 쿼리가 모두 성공적으로 실행되어야 데이터가 정상적으로 처리되는 경우 DBMS 트랜잭션(transaction)을 이용해서 한 개 이상의 쿼리를 마치 한 개의 쿼리 처럼 처리할 수 있다. ✅ JDBC에서는 모든 DML 작업이 자동으로 auto commit으로 처리된다. 하지만 트랜잭션으로 처리해야만 하는 작업에서는 명시적으로 auto commit을 비활성 시킨 후에 작업해야 된다. 💡 둘 다 성공해서 실제 DB에 반영 ..
DAO(Data Access Object) Pattern
·
DB/MyBatis
📌 DAO (Data Access Object) DB에 있는 Data에 접근을 가능하게 해주는 객체 DAO 클래스 모듈화한 클래스들 중에서 데이터베이스 또는 파일 처리하는 코드만을 관리하는 클래스 파일 DAO 패턴 비지니스 로직과 DB를 분리하기 위해서 사용하는 패턴 DB의 접근을 전담 DB를 사용하는 방법이 변경되더라도 로직이 변경되지 않도록 DB 로직을 캡슐화 하여 분리하는 방법 📌 DTO (Data Transfer Object) getter/setter 메소드만 가지는 데이터 교환을 위한 객체 DTO 클래스 데이터를 다른 logic에게 전송 및 반환할 때 효율적으로 데이터를 전송 및 사용할 수 있게 하는 클래스 📌JDBC(Java Database Connectivity) 1) jar 파일(drive..
JDBC
·
DB/MyBatis
Java DataBase Connectivity 📌 1. 개요 JDBC는 웹 환경이건 아니건 어떤 환경에서건 자바언어를 사용하는 경우에 DBMS 종류에 상관없이 데이터베이스에 접근할 수 있는 독립적인 프로그래밍 API이다. 📌 2. 특징 벤더에서 제공해준 클래스 파일 (드라이버 Driver) 가 필요하다. 압축파일(jar)로 제공한다. (압축풀면 안됨) RDBMS의 버전마다 다르다. C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib 실습 > ojdbc6_g.jar java.sql 패키지 사용 ==> 무조건 import 해야함 비런타임 계열이기 때문에 무조건 예외처리 (try~catch, throws)가 필수이다. 📌 3. DB연동 순서 ★ ① 이클립스에서 프..
xoo | 수진
xoo의 성장기록