[Spring Boot] 스프링부트 Mysql DB 연동

2023. 7. 5. 13:46·프로그래밍 일기/Java & Spring
반응형

버전 정보

Java : 11

Mysql : 5.7.41.0 ( 8 이후 버전의 경우도 하단에 설명드리겠습니다. )

Spring Boot : 2.7.13


build.gradle
plugins {
    id 'java'
    id 'org.springframework.boot' version '2.7.13'
    id 'io.spring.dependency-management' version '1.0.15.RELEASE'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
    sourceCompatibility = '11'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.3.1'
    implementation 'mysql:mysql-connector-java:5.1.30'
}

tasks.named('test') {
    useJUnitPlatform()
}

mysql 8버전 이후인 경우 

implementation 'mysql:mysql-connector-java:5.1.30' 해당 값을

ex) implementation 'mysql:mysql-connector-java:8.0.22' 로 수정

application.properties
# 자신에게 필요한 버전을 사용하시면 됩니다.
# 5.x 버전
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
mybatis.mapper-locations=/mapper/**/*.xml

# 8버전 이후
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
mybatis.mapper-locations=/mapper/**/*.xml

spring.datasource.url=jdbc:mysql://[host]:[port]/[db명] 

host, port, db명을 정확하게 입력하고

mybatis.mapper-locations=/mapper/**/*.xml

위 경로 설정 부분 또한 정확하게 맞춰주어야 합니다.

 

TestController
@RestController
public class TestController {

    private final TestService testService;

    public TestController(TestService testService) {
        this.testService = testService;
    }

    @GetMapping("/list/load")
    public Map loadList(@RequestParam Map params) throws Exception {
        return testService.loadList(params);
    }

}

 

TestService
package com.example.testapi.api.test;

import org.springframework.stereotype.Service;

import java.util.HashMap;
import java.util.Map;

@Service
public class TestService {

    private final TestMapper testMapper;

    public TestService(TestMapper testMapper) {
        this.testMapper = testMapper;
    }

    public Map loadList(Map params) throws Exception {
        Map result = new HashMap();

        result.put("code", 200);
        result.put("data", testMapper.loadList(params));
        result.put("message", "success");

        return result;
    }

}

 

TestMapper
package com.example.testapi.api.test;

import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface TestMapper {

    List<Map> loadList(Map parmas) throws Exception;

}

 

TestMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.testapi.api.test.TestMapper">

    <select id="loadList" resultType="Map">
        SELECT COLUMN1
             , COLUMN2
             , COLUMN3
          FROM TEST
    </select>

</mapper>

 

결과

 

반응형
저작자표시 (새창열림)

'프로그래밍 일기 > Java & Spring' 카테고리의 다른 글

[Spring Boot] 스프링부트 파라미터 받기  (0) 2023.07.07
[Spring Boot] Mybatis 쿼리 로그 찍기 log4j2 설정 방법, logging level 설명  (0) 2023.07.05
[Spring Boot] 인텔리제이 IntelliJ 스프링 부트 생성 방법  (0) 2023.07.04
JAVA 페이징 처리 및 알고리즘  (0) 2022.07.06
MVC 패턴이란?  (0) 2022.07.06
'프로그래밍 일기/Java & Spring' 카테고리의 다른 글
  • [Spring Boot] 스프링부트 파라미터 받기
  • [Spring Boot] Mybatis 쿼리 로그 찍기 log4j2 설정 방법, logging level 설명
  • [Spring Boot] 인텔리제이 IntelliJ 스프링 부트 생성 방법
  • JAVA 페이징 처리 및 알고리즘
MakeMe
MakeMe
제가 포스팅한 글 중 잘못된 부분이 있으면 알려주세요!
  • MakeMe
    Developer blog
    MakeMe
    • 모든 글 (71)
      • 프로그래밍 일기 (57)
        • Java & Spring (21)
        • Python & Flask (3)
        • Linux (12)
        • Front-End (10)
        • DB & SQL (6)
        • Git (3)
        • IDE (2)
      • 자격증 (7)
        • 정보처리기능사 (2)
        • SQLD (1)
        • SW개발_L5 (1)
        • AWS (3)
      • 독립일기 (7)
        • 중소기업청년대출 (7)
  • 인기 글

  • 태그

    IntelliJ
    MYSQL
    psql
    자바환경변수
    AWS
    DB
    자동배포설정
    건강보험자격득실확인서
    java
    Spring
    springboot
    nuxt3
    flask 세팅
    스프링부트
    중기청서류
    중소기업청년대출
    Vue
    넉스트
    DBeaver
    스프링
    nuxt
    중기청필수서류
    젠킨스 우분투 설치
    중기청후기
    중기청필요서류
    고용보험내역서
    자바
    젠킨스 자동 배포
    인텔리제이
    flask
  • hELLO· Designed By정상우.v4.10.1
MakeMe
[Spring Boot] 스프링부트 Mysql DB 연동
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.