인프런 커뮤니티 질문&답변

은빛갈기님의 프로필 이미지

작성한 질문수

스프링 배치

DB 스키마 생성 및 이해 (1)

application.yaml 물어봅니다.

작성

·

505

0

yaml 설정파일에서 계속 에러가 나서

설정할 username, password,database

정보가 틀렸는 검사해봤습니다.

아래와 같이 아무런 문제 없었습니다.

스크린샷 2022-10-12 오후 9.13.57.png

아래화면처럼 설정을 했습니다.

애플리케이션을 구동했을 때 화면입니다.

자꾸 url 쪽에서 에러가 난다고 나옵니다.

화면 보면서 따라가는중인데 왜 에러가 자꾸 날까요?

 

스크린샷 2022-10-12 오후 9.13.34.png

application.yaml

spring:
    datasource:
        hikari:
            jdbc-url: jdbc:mysql://localhost:3306/insoodb?useUnicode=true&characterEncoding=utf8&useSSL=false
            username: insoo
            password: insoo
            driver-class-name: com.mysql.jdbc.Driver
    batch:
        jdbc:
            initialize-schema: always

 

답변 3

0

정수원님의 프로필 이미지
정수원
지식공유자

강의 예제로 제공된 소스 자체는 아무런 문제가 없어 보이는데요...

저도 실행을 해 보면 오류가 발생하지는 않습니다.

혹시 다른 설정에서 충돌이 나거나 하는 부분은 없는가요?

0

저는 이렇게 설정했더니 잘됩니다.

 

datasource:
    hikari:
      jdbc-url: jdbc:mysql://localhost:3306/springbatch?useUnicode=true&chracterEncoding=utf8
      username: root
      password:
      driver-class-name: com.mysql.cj.jdbc.Driver

0

저도 동일한 문제가 발생하여... 해결책을 좀 찾아봤습니다.

 

두가지 방법으로 해결할수 있는데

  1. 의존성에 mysql 과 h2 둘다 추가..

runtimeOnly 'com.h2database:h2'
runtimeOnly 'mysql:mysql-connector-java'

또는

  1. yml 파일 구성 변경

 

spring:
  datasource:
    url: jdbc:mysql://127.0.0.1/spring_batch?autoReconnect=true&noDatetimeStringSync=true&zeroDateTimeBehavior=convertToNull&characterEncoding=utf8&useUnicode=true&mysqlEncoding=utf8&noAccessToProcedureBodies=true
    username: test
    password: test
    driver-class-name: com.mysql.cj.jdbc.Driver

 

아 아직 왜 이렇게 동작이 되는지 정확한 이유를 모르겠네요 ㅠㅠ 좀더 찾아보겠습니다...

 

혹시 h2 DATABASE 연결은 강의 챕터 어디에서 설명이 나와있는지 아시나요??