이번 포스팅에서는 Spring Maven 프로젝트를 생성 후 MS-SQL과 연결하는 과정을 설명드리겠습니다.

 

MS SQL Server 2019 JDBC Driver 정보가 있는 다음 사이트에 접속합니다.

 

docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15

 

Download Microsoft JDBC Driver for SQL Server - SQL Server

Download the Microsoft JDBC Driver for SQL Server to develop Java applications that connect to SQL Server and Azure SQL Database.

docs.microsoft.com

다음과 같이 네모칸으로 표시된 파일을 다운받아 라이브러리를 직접 세팅하셔도 됩니다.

 

이번 포스팅에서는 pom.xml에 설정하는 방식으로 진행하겠습니다.

 

스크롤을 내려보면 다음과 같이 pom.xml에 설정하는 방법이 나와 있습니다.

 

copy를 클릭합니다.

 

붙여넣기를 할 때 jdk 버전이 11이 아니라면 위 xml 정보에서 jre11을 환경에 맞게 수정해야 합니다.

예를 들어 jdk가 1.8이라면 jre8로 수정해주시기 바랍니다.

 

pom.xml에 붙여넣기 하고 저장 버튼을 클릭하면 해당 프로젝트의 Maven Dependencies에 MS SQL JDBC가 포함된 것을 확인할 수 있습니다.


properties파일에 데이터베이스 접속 정보를, context.xml에 dataSource Bean을 등록 후 DB에 접속할 수 있는 환경을 세팅해보도록 하겠습니다.

 

src/main/resources에 config 폴더를 생성하고 db.properties파일을 만듭니다.

해당 파일에 다음과 같이 입력합니다.

jdbc.driverClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc.url = jdbc:sqlserver://주소;databaseName=데이터베이스명
jdbc.user = 계정id
jdbc.password = password

 

이 정보를 dataSource Bean에 매핑하는 작업을 하도록 하겠습니다.

context.xml을 따로 만드시거나 tomcat 실행과 함께 로딩되는 WEB-INF/spring/root-context.xml에 작성하면 됩니다.

<beans> 루트 엘리먼트 안에 다음을 입력합니다.

	
    <!-- Root Context: defines shared resources visible to all other web components -->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:config/db.properties</value> 
            </list>
        </property>
    </bean>	
    
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${jdbc.driverClassName}"/>
        <property name="url" value="${jdbc.url}" />
        <property name="username" value="${jdbc.user}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>

PropertyPlaceholderConfigurer class에는 properties 파일의 위치를 설정합니다.

DriverManagerDataSource class에는 properties 파일에 있는 설정 값을 property로 등록하여 Spring에서 jdbc 설정 값으로 사용할 수 있게 합니다.

 

그런데 DriverManagerDataSource class에 빨간색으로 표시되면서 읽을 수 없다고 나오는 경우가 있습니다.

 

DriverManagerDataSource를 사용하기 위하여 pom.xml에 다음을 입력해 spring-jdbc.jar를 Maven Dependencies로 등록해야 합니다.

		<!-- Spring-jdbc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>${org.springframework-version}</version>
		</dependency>

 

다음과 같이 빨간 줄이 사라진 것을 확인 할 수 있습니다.

 

 

Spring에서 MS-SQL DB에 접속할 수 있게 환경 설정을 마쳤습니다.

+ Recent posts