2018년 7월 29일 일요일

spring에서 mariadb로 연동후 웹에서 접근시 jdbc 오류가 발생할때

* 본문은 [코드로 배우는 스프링 웹 프로젝트, 구멍가게 코딩단 지음] 도서를 공부하면서 정리한 글임을 밝힙니다.



이전 직장에서 한번 mysql의 성능이 타 Database들에 비해 굉장히 부족하고 문제점이 비교적 많이 산재해있는 것에 크게 데인적이 있는 지라  mysql의 free licence 및 여러 장점에도 불구하고 개인적으로 선호하지 않는다.

그런지라 db를 구축해서 써야 할때면 mysql보다는 형제라 할 수 있는 mariadb를 선호하게 되어 자주 사용하게 되었기에 이번에도 역시 mysql 대신 mariadb를 사용하여 연동 및 테스트를 진행하고 있었던 중이었다.

view 부분을 구현하면서 게시물 등록 성공시 success page를 리턴해야하는데 뜬금없이 jdbc 관련 오류가 나를 반겨주었다.

jdbc? 이전에 junit 테스트할때는 정상적으로 동작했는데? 그런데 실제 웹페이지에서 접근할땐 안된다고?

그렇기에 또 열심히 jdbc설정 변경도 해보고 구글링도 해 보다가 관련된 글을 찾을 수 있었다.


http://developer-kylee.tistory.com/8


아하, mysql jdbc 버전과 관련된 문제구나, 싶어 따라해 보았으나 역시나 jdbc 관련 에러가 나를 반겨줄 뿐...

무엇이 문제일까 고민해보다 주석 처리를 해놓은 예전 mariadb datasource 코드가 문득 눈에 들어왔다.


<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.mariadb.jdbc.Driver" />
<property name="url" value="jdbc:mariadb://127.0.0.1:3306/book_ex" />
<property name="username" value="admin"></property>
<property name="password" value="123"></property>
</bean>


원래는 mariadb용 jdbc 설정을 해놓고 진행하다가 어느 순간 책을 따라서 책의 mysql 예제로 바꿨었는데 혹시 이게 문제인가 싶어 설마 하는 심정으로 에전 코드로 설정해보니...




된다. 동작한다. 정상적으로...!



추가적으로 찾아보니 mysql보다는 log4jdbc 쪽에 애초에 조금 문제가 있었던 것 같다. 자세한 내용은 좀더 찾아봐야 할테지만 일단 문제점을 찾아내고 해결했으니 다행이구나!

댓글 없음:

댓글 쓰기

spring에서 mariadb로 연동후 웹에서 접근시 jdbc 오류가 발생할때

* 본문은 [코드로 배우는 스프링 웹 프로젝트, 구멍가게 코딩단 지음] 도서를 공부하면서 정리한 글임을 밝힙니다.