
Spring JDBC 기초(Template Method 패턴과 기능 소개) Spring JDBC는 Template Method 패턴을 활용하여 간편하고 일관된 방식으로 데이터베이스와 연동할 수 있는 기능을 제공합니다. 이번 글에서는 Template Method 패턴의 개념과 Spring JDBC의 기본 기능에 대해 알아보겠습니다. Template Method 패턴 Template Method 패턴은 알고리즘을 캡슐화하여 재사용성과 일관성을 제공하는 패턴입니다. 특정 작업의 순서는 고정되어 있지만, 일부분은 변경이 필요한 경우에 유용하게 사용할 수 있습니다. Spring DAO도 Template Method 패턴을 활용하여 일관된 데이터베이스 액세스 방식을 제공합니다. Spring JDBC의 기능 Spri..
Spring JDBC에서의 설정 및 JdbcTemplate 활용 Spring JDBC는 데이터베이스와의 연동을 간편하게 처리할 수 있는 기능을 제공합니다. 이번 글에서는 Spring JDBC의 설정과 JdbcTemplate의 활용 방법에 대해 알아보겠습니다. DataSource 설정 데이터베이스 연결을 위해 DataSource를 설정해야 합니다. BasicDataSource를 사용하여 필요한 드라이버 클래스, URL, 사용자 이름, 암호를 지정할 수 있습니다. 또는 Spring Framework에서 제공하는 DataSource 구현 클래스를 사용할 수도 있습니다. 또는 WAS에서 제공하는 JNDI를 활용할 수도 있습니다. JdbcTemplate 설정 DAO 클래스에서 Spring DAO를 사용하기 위해 ..
Spring JDBC에서의 JdbcTemplate API 활용 Spring JDBC는 데이터베이스 연동을 간편하게 처리할 수 있는 기능을 제공합니다. 그 중에서도 JdbcTemplate API는 SQL 문 실행 및 결과 처리를 단순화하는 강력한 도구입니다. 이번 글에서는 JdbcTemplate API의 주요 메서드와 활용법을 살펴보겠습니다. queryForInt() 메서드 하나의 정수값을 반환하기 위해 사용되는 메서드입니다. SELECT 문을 실행하고 결과로 나온 정수값을 받아올 수 있습니다. 예를 들어, 특정 테이블의 레코드 수를 구할 때 사용할 수 있습니다. queryForObject() 메서드 하나의 객체를 반환하기 위해 사용되는 메서드입니다. SQL 문의 실행 결과가 하나의 객체로 반환되는 경우에..
Spring JDBC에서의 Transaction 관리2 (AOP와 프로그래밍 방식) Spring JDBC는 데이터베이스 트랜잭션을 효율적으로 관리하기 위해 다양한 기능을 제공합니다. 이번 글에서는 Spring JDBC에서의 Transaction 관리에 대해 알아보겠습니다. AOP를 이용한 선언적인 방식과 프로그래밍 방식으로의 Transaction 처리를 살펴볼 것입니다. Transaction Namespace 등록 Spring에서는 Transaction 처리를 AOP를 통해 수행합니다. 이를 위해 XML 설정 파일에서 네임스페이스를 등록해야 합니다. 이렇게 등록하면 TransactionManager가 Advisor로 동작하게 됩니다. DataSource 설정 Transaction을 관리하기 위해 Data..
Spring JDBC의 Transaction 관리(AOP, 프로그래밍 방식) Spring JDBC는 데이터베이스 트랜잭션을 관리하기 위한 다양한 기능을 제공합니다. 이번 글에서는 Spring JDBC에서의 Transaction 관리에 대해 알아보겠습니다. AOP를 활용한 선언적인 방식과 프로그래밍 방식으로의 Transaction 처리를 다룰 것입니다. Transaction Namespace 등록 Spring에서는 Transaction 처리를 AOP를 이용하여 수행합니다. 이를 위해 와 네임스페이스를 등록해야 합니다. 이를 통해 TransactionManager가 Advisor로 동작하게 됩니다. DataSource 설정 Transaction을 관리하기 위해 DataSource를 설정해야 합니다. 이를 위..
iBatis Framework 개요: Data Mapper와 Sql Mapper iBatis는 Data Mapper와 Sql Mapper로 구성된 프레임워크로, 미리 작성된 SQL 구문을 실행하고 실행 결과를 자바 객체에 매핑하여 반환하는 역할을 합니다. 이번 글에서는 iBatis의 개요와 주요 개념에 대해 알아보겠습니다. iBatis 개념 iBatis는 객체와 데이터베이스를 독립적으로 유지하면서 데이터를 매핑하는 Data Mapper입니다. SQL 구문 작성에 필요한 데이터를 클래스의 필드에서 추출하고 SQL 실행 결과를 클래스에 매핑합니다. 이를 통해 JDBC의 ResultSet과 객체를 연결하는 작업과 속성 매핑을 자동화하여 개발자의 작업을 간소화합니다. 사용 예 예를 들어, 회원 정보를 저장하는 ..
Spring과 iBatis를 활용한 SqlMap 설정 iBatis는 데이터베이스와 상호작용하는 데에 사용되는 SQL Map을 설정하는 과정이 필요합니다. 이번 글에서는 Spring과 iBatis를 통해 SqlMap을 설정하는 방법에 대해 알아보겠습니다. SqlMapConfig.xml 파일 설정 SqlMapConfig.xml 파일은 데이터베이스 접속부터 실제 사용할 SQL Map까지의 모든 정보를 프레임워크에 제공하는 파일입니다. 파일 내에서 다양한 설정을 할 수 있습니다. 일부 중요한 설정은 다음과 같습니다. lazyLoadingEnabled 늦은 로딩(데이터 사용 시 select)을 사용할지 여부를 설정합니다. cacheModelsEnabled: 캐시를 사용할지 여부를 설정합니다. useStatemen..
Spring과 iBatis를 활용한 파라미터 매핑 iBatis는 데이터베이스와 상호작용하는 데에 있어 파라미터 매핑이 중요한 요소입니다. 이번 글에서는 Spring과 iBatis를 연동하여 파라미터를 매핑하는 방법에 대해 알아보겠습니다. 파라미터 매핑 iBatis는 내부적으로 PreparedStatement 객체를 사용하여 SQL을 실행합니다. 이때 필요한 파라미터 값을 매핑해야 합니다. 파라미터로 사용할 수 있는 자료형은 자바빈, 원시 래퍼 객체(String, Integer, Object), java.util.Map입니다. 자바빈을 전달하는 경우 자바빈(VO) 객체의 속성명을 해시(#) 기호로 감싸서 지정하면 됩니다. 예를 들어, SELECT 문에서 ID 값을 파라미터로 전달하려면 "WHERE ID=#..