1. 프로젝트를 생성하기 위해 스프링부트스타터(https://start.spring.io/)에 들어간 후 Gradle Project를 선택한다.

 

2. 필요한 Dependencies를 추가하기 위해 ADD DEPENDENCIES.. 를 클릭해 추가해준다.

mariaDB와 Mybatis를 사용하기 위해 mariaDB Driver와 Mybatis Framework를 추가해준다.

 

3. 설정이 완료되면 하단에 GENERATE 를 선택해서 프로젝트를 생성한다.

 

4. 다운받은 프로젝트를 압축 해제하고 인텔리제이에서 Import Project를 클릭한다.

 

5.  생성한 프로젝트 build.gradle를 클릭해 프로젝트를 열어준다.

build.gradle파일을 열어보면 프로젝트 생성 시 추가한 Dependencies를 확인할 수 있다.

* build.gradle란

: 프로젝트의 라이브러리 의존성, 플러그인, 라이브러리 저장소 등을 설정할 수 있는 빌드 스크립트 파일

 

6. application.properties 파일에 db 접속정보를 입력해준다.

spring.datasource.driverClassName=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mysql://[ip주소]:[포트번호]/[데이터베이스명]?serverTimezone=UTC
spring.datasource.username=사용자
spring.datasource.password=비밀번호	

 

7.  다음으로 DataBaseConfig 파일을 생성해준다.

import com.zaxxer.hikari.HikariConfig;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;

import javax.sql.DataSource;

@Configuration
@MapperScan(basePackages = "com.example.PharmacyInfoMap.Dao")
public class DatabaseConfig {

    @Bean
    @ConfigurationProperties(prefix = "spring.datasource")
    public HikariConfig hikariConfig() {
        return new HikariConfig();
    }

    @Bean(name="datasource")
    public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception{
        SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
        sessionFactoryBean.setDataSource(dataSource);
        sessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*.xml"));
        return  sessionFactoryBean.getObject();
    }

    @Bean
    public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory){
        return new SqlSessionTemplate(sqlSessionFactory);
    }
}

 

이렇게 작성하면 mariaDB와 Mybatis 연동이 완료된다.

 

다음글에는 공공데이터포털에서 약국정보 api를 받아 db에 쌓은 후 카카오맵을 사용하여 약국 위치를 보여주는 화면을 구현해볼거다.

+ Recent posts