반응형
pom.xml 파일에 의존 라이브러리 등록
스프링 MVC에서 DB에 접속하기 위해서는 spring-jdbc.jar, commons-dbcp2.jar, mysql-connector-java.jar 파일을
의존성 라이브러리로 등록합니다.
다음과 같이 등록해 줍니다.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.1.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.24</version>
</dependency>
servlet-context.xml에 데이터베이스 환경 설정
DataSource 설정
스프링 JDBC가 JDBC API를 사용해서 데이터베이스에 접속하기 위해서는
드라이버를 로드하고 데이터베이스에 접속해서 커넥션 객체를 받아옵니다.
위 과정을 위해서는 다음과 같이 DataSource를 빈 객체로 등록해야 합니다.
<beans:bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<beans:property name="driverClassName" value="JDBC 드라이버 클래스 이름"/>
<beans:property name="url" value="jdbc:mysql://localhost/데이터베이스 이름"/>
<beans:property name="username" value="MySQL 관리자 ID"/>
<beans:property name="password" value="MySQL 비밀번호"/>
</beans:bean>
JdbcTemplate 빈 등록
DataSource 설정이 끝나면 jdbcTemplate 빈 객체가 dataSource를 참조하도록
다음과 같이 설정합니다.
<beans:bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<beans:property name="dataSource" ref="dataSource"/>
</beans:bean>
저장소 객체에서 JdbcTemplate 클래스 사용
DAO 클래스에서 JdbcTemplate 클래스를 사용하기 위해서는 다음과 같이 설정합니다.
먼저 JdbcTemplate 클래스의 인스턴스를 선언하고 Setter() 메소드를 생성합니다.
Setter() 메소드의 매개변수로 dataSource를 전달받아 JdbcTemplate 클래스의 생성자 매개변수로 전달합니다.
이 때 스프링 MVC 설정 파일에 DataSource 설정과
컴포넌트 스캔 <context:component-scan base-package="com.springmvc"/>가 반드시 설정되어 있어야 합니다.
@Repository
public class JdbcDAOImpl implements JdbcDAO {
private JdbcTemplate template;
@Autowired
public void setJdbctemplate(DataSource dataSource) {
this.template = new JdbcTemplate(dataSource);
}
}
반응형
'SPRING' 카테고리의 다른 글
[SPRING]#80 도서 쇼핑몰 구현 (DB 연동5) (0) | 2024.03.03 |
---|---|
[SPRING]#79 도서 쇼핑몰 구현 (DB 연동4) (0) | 2024.03.02 |
[SPRING]#77 도서 쇼핑몰 구현 (DB 연동2) (0) | 2024.03.02 |
[SPRING]#76 도서 쇼핑몰 구현 (DB 연동1) (0) | 2024.03.02 |
[SPRING]#75 도서 쇼핑몰 구현 (타일즈 7) (0) | 2024.03.01 |