React 18

웹 개발 - 데이터 흐름, 네이밍

React, Axios, Spring Boot, JPA, MySQL을 사용할 때 데이터가 흐르는 과정에서 Front → Controller → Service → Repository → Entity → DB 사이에서 이루어지는 모든 매핑의 경우의 수와, 각 매핑 시 변수명을 어떻게 해야 하는지에 대한 정리.📌 데이터 흐름 및 매핑의 경우의 수1️⃣ 전체적인 데이터 흐름[React] → (Axios 요청) → [Controller] → (DTO 변환) → [Service] → (Entity 변환) → [Repository] → (DB 저장) → [DB] → (조회 후 Entity 반환) → [Se..

웹 개발 2025.03.02

클라이언트(Frontend)와 서버(Backend) 간의 데이터 흐름

클라이언트(Frontend)와 서버(Backend) 간의 데이터 흐름🚀 GET 요청의 전체 흐름: Front → Back → Front (React + Spring Boot + MySQL + Axios 사용)📌 기본 개념Frontend (React + Axios) → 데이터를 요청Backend (Spring Boot + JPA) → 요청을 처리하고 DB에서 데이터 조회Database (MySQL) → 데이터를 저장하고 조회🔄 전체 흐름 (GET 요청)1️⃣ React (사용자가 데이터 요청) ⬇️ Axios GET 요청 전송 (HTTP 요청)2️⃣ Spring Boot Controller (요청 수신) ⬇️ Service 계층으로 전달3️⃣ Spring Boot Service (비즈니스 로직..

웹 개발 2025.02.26

React - Router의 동작 흐름

React Router의 동작 흐름1️⃣ navigate()로 이동onClick={() => navigate(`/product/detail/${product.id}`)}버튼을 클릭하면 navigate()가 실행되면서 URL이 /product/detail/:id 형식으로 변경됨.예를 들어 product.id가 5라면 /product/detail/5로 이동.2️⃣ 해당하는 Route로 매칭} />React Router가 현재 URL이 /product/detail/:id 패턴과 일치하는지 확인.ProductDetail 컴포넌트를 렌더링함.3️⃣ useParams()로 id 값 가져오기const { id } = useParams();useParams()를 사용하면 URL에서 :id에 해당하는 값(예: 5)을 가..

웹 개발 2025.02.24

반환값이 JSX인 모든 경우의 수 정리

✅ 반환값이 JSX인 모든 경우의 수 정리🚀 React 컴포넌트에서 JSX를 반환할 수 있는 모든 가능한 경우를 정리했습니다.📌 JSX 반환이란?➡ React 컴포넌트가 JSX를 반환할 때, 여러 형태의 JSX를 반환할 수 있습니다.➡ JSX는 React에서 HTML-like 코드이지만 내부적으로 JavaScript 객체로 변환됩니다.🔹 1. JSX를 반환하는 모든 경우의 수경우JSX 반환 예제설명오류 여부✅ 단일 JSX 반환return Hello;기본적인 JSX 반환 (React 요소)❌ 없음✅ 여러 개의 JSX 요소 반환 (Fragment 사용)return TitleText;를 사용해 여러 요소 반환❌ 없음✅ 여러 개의 JSX 요소 반환 (div 사용)return TitleText;로 감싸서 반..

React - HTTP 전송 방식

React에서 HTTP 전송방식과 처리 방법을 초급 개발자의 시선에서 완벽하게 정리해 줄게요. 🚀📌 1. HTTP 전송방식 개요웹 애플리케이션에서 클라이언트(React)와 서버(백엔드)가 데이터를 주고받을 때 HTTP 요청을 사용해요.전송방식역할GET데이터를 가져옴 (조회)POST새로운 데이터를 서버에 보냄 (생성)PUT기존 데이터를 업데이트PATCH일부 데이터를 업데이트DELETE데이터를 삭제React에서는 fetch API 또는 Axios 라이브러리를 사용하여 이 요청을 처리할 수 있어요.📌 2. HTTP 요청 처리 방법 (fetch API)✅ fetch() 기본 문법fetch(요청_URL, { 요청_설정 }) .then(response => response.json()) // 응답을 JS..

웹 개발 2025.02.12

250212 복습2

이 코드는 React Bootstrap을 사용하여 폼을 만들고 있습니다. 아직 React와 Bootstrap이 익숙하지 않은 초급 개발자라면, 하나씩 차근차근 설명해 줄게요. 😊🔹 1. 코드 개요import { Button, Form, InputGroup } from "react-bootstrap";react-bootstrap 라이브러리에서 Button, Form, InputGroup 컴포넌트를 가져옵니다.이 라이브러리는 기본 Bootstrap 스타일을 React에서 컴포넌트 형태로 쉽게 사용할 수 있도록 만든 라이브러리입니다.function App(props) { const onSubmitInsert = props.onSubmitInsert;props로 부모 컴포넌트에서 전달된 onSubmit..

React의 "재렌더링(Re-rendering)"과 "재조정(Reconciliation)" 개념 정리

✅ React의 "재렌더링(Re-rendering)"과 "재조정(Reconciliation)" 개념 정리React의 렌더링 과정은 크게 두 가지 단계로 나뉘어:1️⃣ 재렌더링(Re-rendering): 컴포넌트가 다시 실행됨 (JSX 재계산).2️⃣ 재조정(Reconciliation): Virtual DOM을 비교하여 바뀐 부분만 실제 DOM에 반영.💡 즉, "재렌더링"이 일어나더라도, "재조정"을 통해 실제 DOM 업데이트는 최소화됨!👉 React는 필요한 부분만 업데이트해서 성능을 최적화하는 게 핵심이야.✅ 1. 재렌더링 (Re-rendering)📌 재렌더링이란?컴포넌트의 return 구문이 다시 실행되는 과정을 의미해.JSX가 다시 계산되지만, 실제 DOM 업데이트는 아직 일어나지 않음.📌 ..

React 최상위 컴포넌트(`App.js`) 개념 및 데이터 관리 키워드

React 최상위 컴포넌트(App.js) 개념 및 데이터 관리 키워드 정리1️⃣ 최상위 컴포넌트란?React에서 최상위 컴포넌트는 애플리케이션의 중심이 되는 컴포넌트로, 보통 App.js가 그 역할을 한다.✅ 최상위 컴포넌트의 역할애플리케이션의 구조 정의여러 개의 하위 컴포넌트를 포함하고 조합하여 UI를 구성한다.상태(State) 및 데이터 관리API에서 데이터를 가져오고 상태를 저장하여 자식 컴포넌트로 전달한다.라우팅(Routing) 관리react-router-dom을 사용하여 페이지 이동을 담당한다.전역 상태 관리Redux 또는 Context API를 통해 전역 데이터를 관리할 수 있다.API 호출 및 데이터 처리fetch() 또는 axios를 이용하여 백엔드 API에서 데이터를 가져온다.2️⃣ 데이..

React - 부모 컴포넌트와 자식 컴포넌트

부모 컴포넌트와 자식 컴포넌트 개념 정리 (완벽 정리)1. 컴포넌트(Component)란?React에서 UI를 구성하는 독립적이고 재사용 가능한 코드 조각.함수형(function)과 클래스형(class)이 있지만, 요즘은 함수형 컴포넌트 사용.2. 부모 컴포넌트(Parent Component)✔ 다른 컴포넌트(자식 컴포넌트)를 포함하는 컴포넌트✔ 데이터를 자식에게 전달할 수 있음 → props 사용✔ 상태(state)를 관리하고, 필요하면 자식에게 상태를 내려줄 수 있음✅ 예제 (부모 → 자식 데이터 전달)import React from "react";import ChildComponent from "./ChildComponent";function ParentComponent() { return ( ..

React의 `state`(상태)와 `props`(프로퍼티)

✅ React의 state(상태)와 props(프로퍼티) 완벽 정리1️⃣ state(상태)란?state는 컴포넌트 내부에서 선언하고 관리하는 데이터(상태) 이다.이 값이 변경되면 해당 컴포넌트가 자동으로 리렌더링된다.📌 state 특징✔️ 컴포넌트 내부에서만 관리 가능 (외부에서 직접 변경 불가).✔️ useState()를 사용해 생성하고, setState()로만 변경 가능.✔️ state가 변경되면 자동으로 해당 컴포넌트가 다시 렌더링됨.✔️ 부모의 state를 자식 컴포넌트에 props로 전달 가능.📝 state 예제import { useState } from "react";function Counter() { const [count, setCount] = useState(0); // state..