MyBatis selectKey 사용 방법
1. selectKey 키값을 가져와서 증가시켜서 입력하거나 혹은 입력 후에 증가된 키값을 가져올 필요가 있다. MyBatis에서 제공하는 selectKey를 이용하면 별도의 쿼리 로직을 등록할 필요 없이 해당 메소드에서 일괄 처리할 수 있다. 1) 기본 문법 <selectKey keyProperty="memberId" resultType="...
1. selectKey 키값을 가져와서 증가시켜서 입력하거나 혹은 입력 후에 증가된 키값을 가져올 필요가 있다. MyBatis에서 제공하는 selectKey를 이용하면 별도의 쿼리 로직을 등록할 필요 없이 해당 메소드에서 일괄 처리할 수 있다. 1) 기본 문법 <selectKey keyProperty="memberId" resultType="...
1. tmp란 스토리지 엔진으로부터 받아온 레코드를 order by, group by 혹은 alter table 명령어 수행을 위해 내부적인 임시 테이블을 사용한다. 일반적으로 임시 테이블은 처음엔 메모리에 생성됐다가 설정값 (max_heap_table_size 혹은 tmp_table_size 값)을 초과하는 경우 디스크로 옮겨진다. 이와 같은 내...
1. 개념 원본 저장소의 변경 내용을 포크(fork)한 저장소에 반영 포크 저장소: https://github.com/dejavuhyo/jekyll-theme-chirpy.git 원본 저장소: https://github.com/cotes2020/jekyll-theme-chirpy.git 2. 동기화 1) 원...
1. Thread Join Thread가 종료될 때까지 기다릴 때 Thread.join()을 사용한다. 예를 들어, Thread A는 Thread B에게 어떤 작업을 실행시키고 완료될 때까지 기다려야 할 때가 있다. 이럴 때 join()을 호출하면 A는 B가 종료될 때까지 기다린다. 2. 예제 Main public class Main {...
1. 스레드(Thread)란 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. 2. 프로세스와 스레드 비교...
1. 프로세스(Process)란 프로세스(process)는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 종종 스케줄링의 대상이 되는 작업(task)이라는 용어와 거의 같은 의미로 쓰인다. 여러 개의 프로세서를 사용하는 것을 멀티프로세싱이라고 하며 같은 시간에 여러 개의 프로그램을 띄우는 시분할 방식을 멀티태스킹이라고 한다. 2. ...
1. JNDI JNDI(Java Naming and Directory Interface)는 디렉터리 서비스에서 제공하는 데이터 및 객체를 참고하여 사용할 수 있도록 도와주는 자바 API이다. 2. Tomcat 설정 1) server.xml <GlobalNamingResources> <Resource auth=...
1. AOP를 이용한 Transaction 처리 1) xml 설정 transaction-context.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="htt...
1. 트랜잭션이란 트랜잭션(Transaction)은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산을 의미한다. 데이터베이스 트랜잭션(Database Transaction)은 데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위이다. 여기서 유사한 시스템이란 트...
1. DI란 DI(Dependency Injection)란 스프링이 다른 프레임워크와 차별화되어 제공하는 의존 관계 주입 기능으로, 객체를 직접 생성하는 것이 아니라 외부에서 생성한 후 주입 시켜주는 방식이다. DI(의존성 주입)를 통해서 모듈 간의 결합도가 낮아지고 유연성이 높아진다. DI는 Spring에서만 사용되는 용어가 아니라 객체지향 ...