오늘의하루

[Spring boot & React] mini project 시작 본문

Spring/mini Project

[Spring boot & React] mini project 시작

오늘의하루_master 2023. 11. 28. 00:32

초기세팅

java = 1.8

spring boot = 2.7.14

db = oracle

build tool = gradle

프로젝트 세팅하면서 알게 된 점

  • spring boot 버전을 낮추는 법
id 'org.springframework.boot' version '2.7.14'

  • spring boot에서 java 버전을 낮추는 법
java { sourceCompatibility = '1.8' }

  • spring boot에서 servlet 인코딩 관련된 속성의 의미
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.force=true
server.servlet.encoding.enabled=true
force 속성      : 서블릿 요청 및 응답에 대해 강제 인코딩을 하도록 지시
enabled 속성 : 서블릿 요청 및 응답에 대한 인코딩 활성

  • React 설치
    • node js를 설치한다.
    • terminal에서 해당 프로젝트에 src/main으로 이동한다.
npx create-react-app appName
발생했던 오류
npm ERR! code ENOENT
npm ERR! syscall lstat
npm ERR! path "node js path"
npm ERR! errno -4058
npm ERR! enoent ENOENT: no such file or directory, lstat 'node js path'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoentnpm ERR! A complete log of this run can be found in: "경로"

해결 방법
1. npm uninstall -g create-react-app
2. npx create-react-app appName

  • React는 기본적으로 3000번 포트를 Spring은 8080포트 번호를 사용한다.
// 위치 : package.json
"proxy" : "http://localhost:8088",
  • 이렇게 포트 번호가 다른것끼리 통신을 하게 되면 CORS 이슈가 발생하는데 proxy를 통해 이를 피할 수 있다.
  • 프록시는 모든 요청에 대해 적용된다.
CORS 관련 설명 : https://evan-moon.github.io/2020/05/21/about-cors/

완성

Comments