그냥 블로그

[Web] WALFI Backend 연동 (JSP, MySQL) 본문

프로젝트/WALFI

[Web] WALFI Backend 연동 (JSP, MySQL)

코딩하는 공대생 2024. 4. 16. 14:58
반응형

 

WALFI의 웹 버전을 만들게 되었다. 

아쉬운 기능들도 있고, 추가해보고 싶은 내용도 있기도 해서 Backend도 약간 건들게 되었다. 

 

팀원들이 만들어놓은 백엔드 기반으로 수정하는 거기 때문에, 우선 세팅부터 하고 들어가기로 했다. 

 


1. JSP Backend 실행...

이 단계는 굉장히 쉬웠다... 

InteliJ 설치 , MySQL 설치만 진행해주면 된다. 

1) java 버전

2) jdk 버전

3) MySQL 버전 

 

정도 맞춰 줬다. 

 

1+2) 우선 java는 build.gradle 파일에 아래 부분에서 11버전인 걸 확인할 수 있었고 

java -version 명령어로 java 설치되어 있는지 확인해 보니까, 11버전이길래 건들게 없었다.

 

3) MySQL 버전

DB는 src/ resources/application.yml  파일에 버전에 대한 정보가 들어있었는데, 

이 driver-class-name 이  com.mysql.cj.jdbc.Drive로 작성된 경우에는 버전 8이라고 한다. 

 

가장 최신 MySQL로 설치해줬다 그래서 ㅎㅎ 

 

ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061)

팀원이 위 오류가 발생했었는데 

에러 메시지를 읽어보면 localhost:3306이 안된다? 그래서 처음엔 3306 포트를 누가 쓰고있는 줄 알았다. 

그래서 mysql을 다른 터미널에서 실행하고 있는거 아닌가? 했는데 컴을 재부팅해도 같은 에러가 떴다. 

 

알고보니 MySQL을 새로 설치하는데 기존에 있던 버전을 삭제하지 않고 위에 install 했었다고 한다...

그 과정에서 충돌이 발생한 것 같았다. 

 

새 버전을 깔 때, MySQL에서 upgrade를 하거나 아래 방법으로 완전히 삭제하도록...

실제로 프론트엔드 개발 때도 node_module에서 그런 일이 굉~~~장히 많았던 기억이..^^ 

 

심지어 upgrade 명령어로 해도 ^_^..

 

MySQL 완전 삭제 후 재설치하기

MySQL 설치 시에 예전에 사용했던 것들이 남아있으면 새로 설치하는 버전에 문제가 될 수 있다. 그래서 미리 다 삭제하고 설치하여야 한다. 다음과 같은 순서로 진행하면 된다.(Installer가 없다면

velog.io

 

MySQL까지 설치가 완료 되었으면, inteliJ에서 터미널 창을 켜고 -> 내 프로젝트의 Backend 부분에서

mysql -u root -p
mysql > CREATE DATABASE [DB명] DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

명령어를 입력해준다. 그럼 DATABASE가 생성되는데, 이 때 DB명을 JSP에서 팀원들이 선언한대로 해줘야 한다.

혹시 명령어 실행이 안된다면, 아마 path 설정을 해주지 않아서 그런 것임 ㅇㅇ

 

exit으로 빠져나감. 

 

아래 명령어도 입력해주면 DB 연동은 잘 된다. 

runtimeOnly 'mysql:mysql-connector-java'

 

BackendApplication.java 파일을 실행하니까 잘 돌아가는 걸 확인할 수 있었다. 

그리고 JSP에서는 DB에 자동으로 tabl을 만들어주는 ddl이라는게 있다고 하는데 
resources/application.yml 파일에 ddl-auto: create로 해주면 처음 실행시킬때 자동으로 생성된다고 한다. 

그 뒤로는 update로 해주면 된다고.. 

 

사실 우리 플젝에선 오류가 좀 있었는데, JSP랑 DB가 약간 다른거 같았음. 

그래서 팀원들이 올려준 덤프 파일로 재생성 했다. 

이게 내 로컬 오류일수도 있고 아예 전체 오류인 것 같기도 한대 잘 모르겠다....;;;