mysql java 연동 예제 속시원내과 | 2019년 8월 2일

SQL 형식은 Java 클래스에 매핑되며 JDBC API와 마찬가지로 그 반대의 경우도 마찬가지입니다. 자세한 내용은 데이터 형식을 참조하십시오. 몇 가지 특별한 경우가 있습니다: java.lang.Object는 기타(직렬화된 개체)에 매핑됩니다. 따라서 java.lang.Object는 모든 SQL 형식과 일치하도록 사용할 수 없습니다(모든 SQL 형식일치는 지원되지 않음). 두 번째 특수 사례는 Object[]: 모든 클래스의 배열이 ARRAY에 매핑됩니다. 형식 org.h2.value.Value(내부 값 클래스)의 개체는 변환 없이 전달됩니다. 위의 예제는 주어진 예제에서 실행 계획이 여기에서 볼 수 있듯이 주문 후 잠금을 적용했기 때문에 작동했습니다. jdbc:mysql://은 하위 프로토콜로 알려져 있으며 MySQL에 대해 일정합니다. MySQL 표준 포트 3306의 로컬 호스트에 연결합니다.

데이터베이스 이름은 testdb입니다. 추가 키/값 쌍은 물음표 문자(?)를 따릅니다. useSSL=false는 MySQL에 보안 연결이 없음을 알려줍니다. 일반적으로 데이터베이스의 마지막 연결이 닫히면 데이터베이스가 닫힙됩니다. 예를 들어 하나 이상의 연결을 열어 둘 수 없는 경우와 같은 경우 응용 프로그램의 속도가 느려지는 경우도 있습니다. 데이터베이스의 자동 닫는 지연 되거나 SQL 문 SET DB_CLOSE_DELAY 사용할 수 있습니다. 매개 변수는 마지막으로 연결이 닫힌 후 데이터베이스를 열어 두는 시간(초)을 지정합니다. 다음 문은 마지막 연결이 닫힌 후 10초 동안 데이터베이스를 열어 두습니다. 이 콘솔 예제의 경우 메시지가 터미널에 표시됩니다. 기본적으로 이 데이터베이스는 자체 네이티브 `추적` 기능을 사용합니다. 이 기능을 `추적`이라고 하며 트랜잭션 로그와 혼동하지 않도록 이 데이터베이스 내에서 `로그`가 아닙니다. 추적 메시지는 파일과 System.out 모두에 기록할 수 있습니다.

대부분의 경우 이 것으로 충분하지만 경우에 따라 Log4j와 같이 응용 프로그램과 동일한 기능을 사용하는 것이 좋습니다. 이를 위해 이 데이터베이스는 SLF4J를 지원합니다. 이미 설명된 설정 외에도 다른 데이터베이스 설정을 데이터베이스 URL에 전달할 수 있습니다. 데이터베이스 URL 끝에 ;set=value 값을 추가하는 것은 연결 직후 SET 설정 값을 실행하는 것과 동일합니다. 지원되는 설정 목록은 SQL 문법 또는 DbSettings 자바독을 참조하십시오. 기본적으로 마지막 연결이 닫히면 데이터베이스가 닫힙습니다. 그러나 닫히지 않으면 종료 후크를 사용하여 가상 시스템이 정상적으로 종료될 때 데이터베이스가 닫힙됩니다. 예를 들어 데이터베이스가 가상 시스템 종료(예: 데이터베이스에 종료 프로세스를 저장하기 위해)에서 여전히 사용되기 때문에 이 경우 데이터베이스를 닫아서는 안 됩니다.

이러한 경우 데이터베이스 URL에서 데이터베이스의 자동 닫는 것을 비활성화할 수 있습니다. 첫 번째 연결(데이터베이스를 여는 연결)은 데이터베이스 URL에서 옵션을 설정해야 합니다(나중에 설정을 변경할 수 없습니다). 종료 시 데이터베이스 닫기를 사용하지 않도록 설정하는 데이터베이스 URL은 이 데이터베이스가 행이 업데이트, 삽입 또는 삭제되기 전이나 후에 호출되는 Java 트리거를 지원합니다. 트리거는 복잡한 일관성 검사 또는 데이터베이스의 관련 데이터를 업데이트하는 데 사용할 수 있습니다. 트리거를 사용하여 구체화된 뷰를 시뮬레이션할 수도 있습니다. 전체 샘플 응용 프로그램에 대 한, 참조 src/테스트/org/h2/샘플/TriggerSample.java. Java 트리거는 인터페이스 org.h2.api.Trigger를 구현해야 합니다. 트리거 클래스는 데이터베이스 엔진의 classpath에서 사용할 수 있어야 합니다(서버 모드를 사용할 때는 서버의 클래스 경로에 있어야 합니다).

Comments are closed.