JDBC 자습서

JDBC 튜토리얼에 오신 것을 환영합니다. Java DataBase Connectivity (JDBC)는 기업 응용 프로그램에서 가장 널리 사용되는 API 중 하나입니다. 이는 대부분의 응용 프로그램이 일종의 데이터베이스 연결을 사용하기 때문입니다. 최근에는 기본 JDBC, DataSource 및 Spring Framework와의 통합과 관련된 많은 JDBC 튜토리얼을 게시했습니다.

JDBC 튜토리얼

이것은 이전에 게시한 모든 jdbc 튜토리얼에 대한 색인 게시물입니다. JDBC에 처음 접하는 경우 이러한 JDBC 튜토리얼을 순서대로 참조하여 이해를 돕기 바랍니다.

  1. JDBC 예제 JDBC API는 데이터베이스 드라이버로부터 느슨하게 결합된 코드를 작성하는 데 도움이됩니다. 이 문서에서는 사용 가능한 다양한 유형의 데이터베이스 드라이버 및 가장 일반적으로 사용되는 드라이버에 대해 설명하고, 그 이유에 대해 설명합니다. 이는 데이터베이스 연결, 명령문 및 결과 집합에 대해 자세히 알아보기 위한 좋은 자료입니다. 이 문서는 또한 데이터베이스 드라이버로부터 느슨하게 결합된 JDBC 프로그램을 작성하는 방법을 보여줌으로써 구성 변경만으로 다른 데이터베이스 서버로 쉽게 전환하는 데 도움이됩니다.
  2. JDBC Statement vs PreparedStatement JDBC API는 데이터베이스와 통신하는 두 가지 방법을 제공합니다 – StatementPreparedStatement. Statement는 사용하기 쉽지만 SQL 인젝션으로 이어질 수 있으며, 이는 모든 애플리케이션을 해킹하는 매우 일반적인 방법입니다. 이 기사는 SQL 문을 사용하여 SQL 인젝션을 어떻게 수행할 수 있는지 명확하게 보여주며, SQL 인젝션 공격을 피하기 위해 PreparedStatement를 사용해야 하는 이유를 설명합니다. 또한 이 기사는 PreparedStatement를 사용하는 것이 Statement보다 얻을 수 있는 주요 이점인 캐싱, 객체 지향 프로그래밍 및 우아한 코드 작성과 같은 몇 가지 이점에 대해 더욱 심층적으로 설명합니다.
  3. JDBC PreparedStatement IN Clause Alternatives JDBC PreparedStatement는 미리 컴파일되기 때문에 IN 절과 함께 사용할 수 없습니다. Statement로 돌아가는 대신, Prepared Statement의 이러한 단점을 극복하기 위해 사용할 수 있는 몇 가지 대체적인 접근 방법이 있습니다. 이 기사에서는 준비된 문과 IN 절을 지원하기 위해 취할 수 있는 네 가지 다른 대안적인 접근 방법을 제공합니다. 이 기사를 읽어보시기 바랍니다. 언제 필요할지 모를 것이기 때문에 읽어보는 것이 좋으며, 또한 JDBC와 관련된 가장 많이 묻는 인터뷰 질문 중 하나입니다.
  4. JDBC Batch Processing 대량 데이터를 처리하고 많은 쿼리를 실행해야 하는 경우, 하나씩 처리하는 것은 좋은 아이디어가 아닙니다. JDBC는 한 번에 한 번 처리하는 것보다 훨씬 빠른 일괄 처리 지원을 제공합니다. 이 기사에서는 일괄 처리를 위한 프로그램 작성 방법을 보여줍니다. 일괄 처리 중 하나의 쿼리에서 예외가 발생하는 경우에 대해 더 자세히 설명합니다.
  5. JDBC CallableStatement Example 저장 프로시저를 실행하기 위해 JDBC API CallableStatement를 사용할 수 있습니다. Oracle Database는 저장 프로시저 IN/OUT 매개변수에 사용할 수 있는 커서 및 DB 객체를 제공합니다. 이 튜토리얼은 이러한 내용에 대한 구체적인 세부 정보와 예제 프로그램을 제공합니다.
  6. JDBC DataSource Example 대부분의 경우 데이터베이스 연결 이상을 찾고 있습니다. 연결 생성은 무거운 프로세스이며 프로그램의 각 부분이 자체 연결을 만들게 하는 것은 좋은 생각이 아닙니다. 이로 인해 리소스 부족 및 성능 저하가 발생할 수 있습니다. 이것이 대부분의 기업 응용 프로그램에서 Connection Pooling을 사용하는 이유입니다. 대부분의 데이터베이스 드라이버는 연결 풀에서 사용할 수 있는 DataSource 구현 클래스를 제공합니다. 이 자습서는 MySQL 및 Oracle DataSource의 예제 및 사용 방법을 제공합니다. 이 글은 또한 서로 다른 DataSource 구현 주위에 래퍼 역할을 하는 Apache DBCP에 대한 세부 정보도 제공합니다.
  7. JDBC Transaction Management 트랜잭션 관리는 여러 쿼리를 실행하려는 경우 중요합니다. 모두 실행되거나 모두 실행되지 않도록하려면 연결 자동 커밋을 false로 설정할 수 있습니다. 모든 것이 순조롭게 진행되면 트랜잭션을 커밋하거나 예외가 있는 경우 전체 트랜잭션을 롤백할 수 있습니다. 또한 트랜잭션에서 특정 지점으로 롤백할 수 있는 Savepoint에 대한 설명도 있습니다. Savepoint를 트랜잭션의 중요한 지점으로 생각할 수 있습니다.
  8. Tomcat JNDI DataSource Example 대부분의 서블릿 컨테이너는 컨테이너에 트랜잭션 관리 및 연결 풀링 작업을 완화하기 위해 사용할 수있는 JNDI 리소스를 지원합니다. 이 문서는 Apache Tomcat 서버에서 DataSource를 구성하고 JNDI 컨텍스트 조회를 사용하여 DataSource를 가져 와 작업하는 방법에 대해 설명합니다.
  9. Spring JDBC 및 JdbcTemplate 예제 이 문서는 Spring Framework와의 JDBC 통합에 대한 자세한 내용을 제공합니다. 우리는 표준 JDBC API를 사용하거나 JDBC와 함께 제공되는 Spring JdbcTemplate의 혜택을 얻을 수 있습니다. 이는 JDBC와 함께 제공되는 모든 보일러 플레이트 코드를 제거하는 데 도움이됩니다. 예를 들어, 연결 열기/닫기, 명령문, 결과 집합 등이 있습니다.
  10. Spring 트랜잭션 관리 Spring은 트랜잭션 관리에 대한 내장 지원을 제공합니다. 트랜잭션 관리는 관점 지향 관심사로, Spring AOP 접근 방식과 선언적 트랜잭션 관리는 사용하기 매우 간단하고 우아합니다. JDBC 작업에 대한 Spring Framework에서 트랜잭션 관리의 다양한 측면을 설명하는 샘플 프로젝트입니다.
  11. Spring DataSource JNDI 예제 Spring 프레임워크는 대부분의 일반적인 작업에 대한 구성 기반 솔루션을 제공하기 때문에 매우 인기가 있습니다. 이것이 바로 Spring 프레임워크가 서블릿 컨테이너에서 정의된 DataSource를 조회하고 가져오는 간단한 구성을 제공하는 이유입니다. 이를 쉽게 수행하는 방법을 보여주는 Spring MVC 예제 프로젝트와 함께하는 튜토리얼입니다.
  12. JSF JDBC 통합 예제 JSF는 가장 널리 사용되는 구성 기반 프레임워크 중 하나입니다. 이 튜토리얼은 JDBC API를 JSF 프레임워크와 통합하는 방법을 설명합니다.
  13. JDBC 인터뷰 질문과 답변 자바 인터뷰에서 다양한 종류의 JDBC 질문을 정복하는 데 도움이 되는 상세한 답변과 함께 40가지 JDBC 관련 인터뷰 질문의 모음입니다.

I will be adding more posts in JDBC tutorial, so please bookmark the post for future reference too.

Source:
https://www.digitalocean.com/community/tutorials/jdbc-tutorial