개발 프로젝트 22

Spring boot와 React 연동 오류 해결

어제 스프링 부트 + 리액트 연동을 성공해놓고는 커밋을 까먹은 채로 넘어가 버렸다.... 설상가상으로 오늘 커밋하다 뭔가 꼬이는 바람에 파일을 싹 날려먹고 (...) 새로 하는데 또다시 계속해서 오류가 났다. 내가 또 오류를 낼 수도 있으니 오류를 정리해보고자 한다..... 일단 Spring security 의존성이 추가되어 있다면, 연동에 성공했을 때 로그인 프롬프트가 뜬다. 기본 id는 user이고, 비밀번호는 메인 애플리케이션을 실행한 콘솔에 표시되어 있다. 그 후 다음과 같은 오류가 날 수 있다. 1. 컨트롤러에서 리턴받은 String 대신 전체 html이 표시되는 경우 프록시 설정이 잘못된 것이다. package.json에서 proxy 설정이 올바르게 되었는지 다시 확인해 볼 것. "proxy"..

개발환경 최신화 및 리액트 연동

백엔드 분야 취준생 친구를 스터디에 영입했다. 동시에 좀더 기술적으로 최신 경향에 가까운 개발 프로젝트를 만들기 위해 스프링 부트 + 인텔리제이 + 리액트를 도입하기로 했다. 이전 버전에서는 롬복도 마이바티스도 안 썼는데 이번에 도입해 봄으로써 해당 라이브러리/프레임워크를 도입했을 때 얼마나 개발 코드 작성이 편해지는지 경험해 볼 수 있을 것이라 생각한다. 개발 환경을 세팅하고, 리액트를 설치했다. 알아보기 쉽게 frontend 경로에 설치해 보았다. C:\DevStudy\IntelliJ\SuiteCare_v2\src\main> npx create-react-app frontend 리액트 공부를 할 때 생성됐던 폴더가 그대로 생겼다. 이제 npm start 명령어를 통해 node.js 환경에서 App.j..

레거시 프로젝트 스프링 부트로 리팩토링하기 시작

부트캠프 중 열심히 진행한 프로젝트가 있다. 그렇지만 기술 스택이 스프링 레거시조차 쓰지 않은.. 오직 JAVA Servlet과 JSP로만 진행된 너무나도 레거시라.. 매우 아쉬웠던 나는 이번에 친구들이랑 스프링으로 포팅하기 위한 리팩토링 프로젝트를 추진했다. 원래는 한번 해봤던 스프링 레거시로 포팅하려고 했는데... 하는 김에 공부를 더해서, 실무에서 쓰일 확률이 높은 기술스택으로 업그레이드하기로 했다. 그래서 환경도 이클립스에서 인텔리제이로 바꾸고 스프링 부트에다가 Gradle까지 써보기로 했다. 일단 부딪혀 보기로!

[SHOES4JO] 멀티캠퍼스 최종 프로젝트 후기

GitHub - yumalg12/SHOES4JO: 멀티캠퍼스 파이널 프로젝트 4조 멀티캠퍼스 파이널 프로젝트 4조. Contribute to yumalg12/SHOES4JO development by creating an account on GitHub. github.com 2달간의 최종프로젝트가 끝났다! 아쉬운 점도 많았지만 일단 끝났다는 것이 후련하다 ㅎㅎㅎ 일단 이번 프로젝트를 진행하면서 API를 도입해 본 경험이 제일 기억에 남는다. 주로 네이버 쇼핑 API를 사용했고, 추가적으로 카카오 쇼핑과 구글 트렌드 등을 사용했는데 진짜.. 예상과 너무 다른 부분이 많아서 고심했던 기억이 난다ㅠㅠ 특히 구글 트렌드! 사실 이건 API 제공이 중단돼서 더 힘들었다. 그렇지만 그 덕분에 CORS도 익히고, 웹..

Request 전송 한글 깨짐 오류 (톰캣 한글 오류)

어느 날 갑자기 Request 시 한글이 깨지는 오류가 났다. 원래 Tomcat 8.5를 사용하다가 다른사람들이 오류난다기에 9.0을 썼는데 내가 오류나기 시작했다. 로그를 찍어보니 ajax로 keyword를 전달하는 중에 한글이 깨지는 거였다. 이클립스 설정을 다 뒤져서 인코딩을 바꿨는데도 해결이 되지 않았고... 원래 쓰던 8.5에선 같은 코드로 정상작동되는 것을 확인했다;; 알고보니 server.xml에 이런 문구가 추가돼 있어서 그런 거였다. euc-kr을 utf-8로 바꾸면 잘 된다. 그런데 같은 9.0이라도 아예 URIEncoding 옵션이 없는 환경도 있었다.. 난 저거 따로 추가 안 했는데 왜 있는지 모르겠다ㅠㅠ 아무튼 오류 이유를 알아서 다행.. https://blog.naver.com/..