@RestController인 ReactController 생성Cross-Origin Resource Sharing
추가 HTTP 헤더를 사용해서
한 출처(origin)에서 실행 중인 웹 애플리케이션이
다른 출처(origin)의 선택한 자원에 접근할 수 있는 권한을 부여하도록
브라우저에게 알려주는 체제
프로젝트명 : react-spring-app
비동기 통신 라이브러리 axios 설치
npm install axioscomponents 폴더 / AxiosString.js 컴포넌트 생성
컴포넌트가 렌더링될 때마다 특정 작업을 수행하도록 설정할 수 있는 Hook
설정한 함수를 컴포넌트가 화면에 맨 처음 렌더링 할 때만 실행하고 업데이트 될 때는 실행하지 않으려면, 두 번째 파라미터를 빈 배열 사용 ([])
렌더링될 때 한 번만 호출
서버를 호출하거나 컴포넌트가 마운트되면서 1회만 수행되는 동작이 필요할 때 사용
npm install react-router-dom<BrowerRouter>로 변경상품 정보 조회
<ProductList><ProductListItem> : 행 (반복 : map() 안에서)상품 상세 정보 조회 : <ProductDetailView>
상품 정보 등록 : <ProductInsert>
상품 정보 수정 : <ProductUpdate>
<ProductList> 컴포넌트 생성<ProductList>에서 받아온 데이터를 <ProductListItem> 컴포넌트로 출력<ProductList>에서 map() 함수 사용해서 <ProductListItem>으로 출력npm install moment <ProductDetailView><Route> 추가<ProductDetailView> 컴포넌트 추가<ProductInsert><productInsert> 컴포넌트 추가<Route> 추가<ProductUpdate><ProductUpdate> 컴포넌트 추가<ProductList>에 수정 항목 추가<ProductListItem>에도 수정 항목 추가<Route> 추가 <ProductDelete><ProductList>에 삭제 항목 추가<ProductListItem>에도 삭제 항목 추가<ProductListItem>에서 삭제 이벤트 처리