Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

쉽지않은 블로그

spring-JDBC 라이브러리-2 본문

개발공부/스프링

spring-JDBC 라이브러리-2

쉽지않네 2021. 3. 24. 13:59

spring-jdbc를 이용하여 드라이버 연결하기


아래 라이브러리를 사용하고자 하는 스프링 버전에 맞게 pom.xml 에 의존성을 주입해준다 <dependency>

spring-conetxt  스프링을 사용하기 위한 라이브러리
spring-jdbc jdbc 라이브러리
spirng-tx  스프링에서 제공하는 트렌젝션 관련 기능
mysql-connector-java mysql에서 제공하는 드라이버
commons-dbcp2 datasource를 사용하기 위하여 주입



 

 

1.DB에 연결에 대한 정보를 해주어야 됨

applicationContext (메인 함수 입장에서는)한테 설정을 알려줄 파일이 필요함

해당 역할을 하는 파일이 applicationconfig class가 된다. 

config라는 패키지를 이용하여 채 설정을 담당하는 파일들을 모아서 관리해주는 게 편함

config패키지 하위에 모든 config클래스들을 모아놓음

package kr.or.connect.daoexam.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;

@Configuration
@ComponentScan(basePackages = {"kr.or.connect.daoexam.dao"})
@Import({DBConfig.class})
public class ApplicationConfig {
	
}

@Configuration annotation 은 해당 파일이 Config 파일이라는 걸 알려준다( load를 할 경우 안내하는 역할)

@import를 사용하여 설정 파일을 여러 개로 분리한 Config파일을 하나로 합쳐준다.

 

 

하위에 DBconfig.class를 두어 정보를 분할함

package kr.or.connect.daoexam.config;

import javax.sql.DataSource;

import org.apache.commons.dbcp2.BasicDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;

@Configuration
@EnableTransactionManagement
public class DBConfig {
	private String driverClassName = "com.mysql.jdbc.Driver";
    private String url = "jdbc:mysql://localhost:3306/connectdb?serverTimezone=Asia/Seoul&useSSL=false";

    private String username = "user";
    private String password = "pw1234";

    @Bean
    public DataSource dataSource() {
    	BasicDataSource dataSource = new BasicDataSource();
        dataSource.setDriverClassName(driverClassName);
        dataSource.setUrl(url);
        dataSource.setUsername(username);
        dataSource.setPassword(password);
        return dataSource;

    }
}
//@EnableTransactionManagement
// DB를 사용할경우 트랜잭션 관리를 위해 사용한 어노테이션

 

driverclassname , url , username , password 가 필요함

 

스프링 jdbc를 이용할 때는 DataSource를 이용해서 DB에 접속하는 내용을 얻어내야 한다

 

이렇게 하기 위해서는 Datasource를 생성할 수 있는 클래스가 필요하다

또한 해당 클래스로 생성된 인스턴스가 현재 내가 사용하려고 하는(localhost::3306에 위치한 DB라는 것과 이름과 비번) 정보들도 주입을 해줘야 된다.

datasource는 connection을 관리해야 될 거기 때문에 드라이버 정보 , url , name , pw 등을 알아야 한다.

(set으로 명시해줌)

 

 

@Bean 어노테이션을 이용하여 등록하는 과정들을 코드에 표시해 두었다.

 

 

Comments