Spring Boot 2 | DB연동

박범준·2023년 3월 6일
0

스프링부트

목록 보기
2/3
post-thumbnail

데이터베이스

사실 강의에서는 마리아DB를 사용 하라고 하였으나

나는 그럴수가 없었다

왜냐면 오라클을 써야 하는 상황이였기 때문에...

마리아DB로 그냥 연습하고 좀 더 안 다음에 오라클로 해야 하나 이러쿵 저러쿵 고민도 정말 많이했다

내가 고생했던 증상은 두가지 였다

  1. DB 드라이버 url 오류
  2. 실행은 하는데 이상하게 테이블 생성이 되지 않음

와 이거 진짜 뭐지 했던 순간순간

사실 이렇게 해맸던 이유는 바로 기본지식의 부족탓이였다

일단 첫번째 드라이버 URL 오류에 대해서 말해보겠다


첫번째로 개고생한 오류는 이것

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class


Action:

Consider the following:
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).

Url이 계속 없다는데..

spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver```
코드를 입력하세요

이렇게 프로파일에 등록하고 안의 내용까지 잘 썼는데도..

대체 나 보고 어쩌란말인가 이런 시부작...

그렇게 또 삽질이 시작되었다

그렇게 삽질을 하던중 찾아낸 방법은 이것이였는데

바로 DB설정 클래스를 따로 만드는것이였다

결론적으로 말하자면 이 방법은... 의미는 없었다

왜냐면 결국 application.properties에만 데이터 소스를 넣었음에도 잘 실행이 됐었기에

그럼 도대체 뭐가 문제일까

나는 천천히 내 코드와 유튜브 강사님의 코드를 비교해 보기로 했다

내코드 : "jdbc:oracle:thin:@localhost:1521:XE"
강사님 코드 : jdbc:oracle:thin:@localhost:1521:XE

""의 차이가 있었다

나는 이클립스로 JAVA 기본과 DB기본을 공부하고 있었을때쯤 JDBC를 연결할때 처럼 링크에는 ""를 붙여야 한다고 알고 그래서 있었고 똑같이 스프링부트를 사용할때도 같은 방식을 사용한것이였는데

그게 아니였다

""를 빼는것이 맞았고 ""를 제외하니 오류가 사라졌다

아직 정확한 이유를 찾지는 못했으나...

내 생각으로는 시스템에서는 URL 그대로를 가져가는데

""를 붙일 경우 "" 역시 링크로 취급되어 오류가 나지 않았을까 싶다

그래서 접속은 해결 됐다

하지만 진짜 개고생 했던 오류는 그 다음 이였다

profile
사람

0개의 댓글