얍얍얍
122
2020-11-11 18:36:49
3
157

리액트 공부중 spring boot와 express 에 관한 질문입니다 ㅠ


신입으로 회사에 들어왔는데 리액트를 공부하라 하셔서 공부중입니다.


리액트 공부 중 node.js로 서버로 돌리고 express 프레임워크? 로 백앤드까지 구현이 가능하다고 들었습니다.


그런데 spring boot로도 리액트에서 백앤드까지 가능하다고 하더라구요.


제가 궁금한것은 기존 spring 은 톰캣으로 서버를 돌리고 


리액트는 node.js로 서버를 돌리는건데


만약 spring boot와 react를 연동하면 서버는 멀로 돌리죠?


만약 톰캣과 노드를 같이 돌려야 한다면 그거에 대한 장단점이 있을까요?


장단점이나 매력이 없으면 서버 한게만 돌리는 express로 만드는게 편하지 않을까요?






0
  • 답변 3

  • gredo
    551
    2020-11-11 18:46:33
    개념을 혼동해서 이해하고 계신 것 같네요. 리액트는 자바스크립트 UI 라이브러리일 뿐 백엔드랑은 관련이 없습니다. Node.js는 자바스크립트 런타임이고, 단순히 패키지 매니저를 설치하는 용도로도 사용할 수 있고, express 서버를 개발할 수도 있습니다.
  • hoonnote
    304
    2020-11-11 19:07:00

    React는 자바스크립트를 활용해 UI components 를 더 빠르고 편하게 만들 수 있게 해주는 툴이잖아요.

    그것처럼, Express는 자바스크립트를 활용해 서버를 더 빠르고 편하게 만들 수 있게 해주는 툴입니다.

    다만, javascript는 웹 환경에서만 동작하기 때문에, 이걸 컴퓨터 안에서도 사용할 수 있게 해준 툴이 Node.js이구요.


    따라서, Node.js 를 사용하면 자바스크립트로 서버개발이 가능하지만, 더 편하게 하기 위해 Express.js를 활용하는겁니다.


    똑같이, Java의 경우도 Java를 사용해서 서버개발이 가능하지만 더 편하게 하기 위해 Srping 을 활용 하는거구요.


    결론으로는, 리액트는 프론트고, 

    서버 돌리는건 리액트는 무조건 node로 해야한다 이런게 아니라,


    서버는 node를 기반으로 하는 express.js를 사용해도 되고, 

    java를 기반으로 한 spring을 사용해도 되는거죠.


  • Sosu
    556
    2020-11-11 20:25:56

    저도 이 부분이 진짜 헷갈리더라고요

    제가 해결한 제일 좋은 방법은 github에 있는 React+springboot+jpa(추가적으로하면 좋음)

    프로젝트를 다운 받아서 뜯어보시는게 좋을것 같아요


    추가적인 팁으론 프론트와 백엔드가 분리돼 있는 프로젝트가 있고

    프론트와 백엔드가 합쳐져 있는 프로젝트가 있습니다


    정말로 많이 헷갈리는 부분이며 확실히 자기가 뭘 모르는지 뭘 아는지 알게 된다면

    사수에게 많은 칭찬을 받을거라 생각듭니다.

  • 로그인을 하시면 답변 을 등록할 수 있습니다.