아래는 Next.js 내부 API 라우트와 외부 API 호출 흐름을 시각적으로 표현한 다이어그램입니다.📌 클라이언트(사용자)에서 요청이 발생하면, 내부 API가 요청을 처리한 후 외부 API와 통신하는 방식[사용자 액션] ⬇️ 1️⃣ 페이지(TodoPage.tsx)에서 GET, POST, DELETE 요청 발생 ⬇️ 2️⃣ 내부 API (/api/todos)에서 요청을 처리하고 인증 및 캐싱 수행 ⬇️ 3️⃣ 내부 API에서 외부 API (https://newallsoft.shop/api/todos)로 실제 요청 전달 ⬇️ 4️⃣ 외부 API가 요청을 처리하고 응답 반환 ⬇️ 5️⃣ 내부 API에서 응답을 받아 클라이언트에 반환 ⬇️ 6️⃣ 클라이언트 UI에서..
1. App Router 구조Next.js 15의 App Router는 app/ 디렉토리 내의 파일과 폴더 구조를 통해 라우팅을 정의합니다. 주요 파일과 그 역할은 다음과 같습니다:page.tsx: 해당 경로의 페이지를 정의합니다. 예: app/page.tsx → / 경로.layout.tsx: 해당 경로와 하위 경로에 적용되는 레이아웃을 정의합니다. 예: app/layout.tsx → 전체 애플리케이션의 기본 레이아웃.error.tsx: 오류 발생 시 표시되는 오류 페이지를 정의합니다.loading.tsx: 로딩 중일 때 표시되는 UI를 정의합니다.route.tsx: API 엔드포인트를 정의합니다.폴더를 추가하면 경로가 자동으로 생성됩니다. 예를 들어, app/blog/page.tsx는 /blog 경로를..
1. 환경 설정Node.js 및 npm 설치:Node.js 공식 홈페이지에서 최신 LTS 버전을 다운로드 및 설치합니다.터미널에서 다음 명령어로 버전을 확인하여 올바르게 설치되었는지 확인합니다.node -vnpm -v2. 프로젝트 생성Next.js는 기본적으로 React를 포함하고 있으므로 별도로 React를 설치할 필요 없이 Next.js를 통해 프로젝트를 시작할 수 있습니다.create-next-app 사용:터미널에서 아래 명령어를 입력하여 새 프로젝트를 생성합니다.@latest 옵션은 최신 버전의 create-next-app을 사용함을 의미합니다.참고:"my-next-project"는 프로젝트 이름입니다. 원하는 이름으로 변경할 수 있습니다.옵션 선택:명령어 실행 후 CLI에서 TypeScript,..
React + Next.js특징 및 장점서버 사이드 렌더링(SSR) 및 정적 사이트 생성(SSG) 지원으로 SEO 최적화와 빠른 초기 로딩 성능 제공[1][7][19].파일 기반 라우팅 시스템으로 복잡한 설정 없이 페이지 관리 가능[1][18].API 라우트 기능을 통해 백엔드 로직을 프론트엔드 프로젝트 내에서 통합 가능[2][18].Vercel 플랫폼과의 통합으로 간편한 배포 및 서버리스 함수 지원[1][18].단점Node.js 환경 의존성으로 인해 정적 호스팅 외 추가 인프라 관리 필요[1].학습 곡선이 가파르며, 프레임워크의 의존성으로 커스터마이징 제약 발생[8][18].적합 사례블로그, 뉴스 사이트 등 SEO가 중요한 콘텐츠 플랫폼[7][19].대규모 애플리케이션에서의 성능 최적화 및 풀스택 개발..
매개변수 타입으로 primitive인 long과 참조형인 Long을 선택할 때 고려해야 할 기준은 다음과 같습니다:null 허용 여부long: null 값을 가질 수 없으며, 기본값이 0입니다.→ 매개변수가 반드시 값이 있어야 하거나, null 상태를 허용하지 않는 경우 사용합니다.Long: null 값을 허용할 수 있습니다.→ 값이 없음을 명시적으로 표현해야 하거나, 데이터베이스 엔티티의 ID 등 초기에는 null인 상태를 허용해야 하는 경우 사용합니다.자동 박싱/언박싱primitive인 long은 연산에서 성능상 유리하지만, Long과의 비교나 컬렉션(Generics)에서는 자동 박싱/언박싱이 일어나므로 주의해야 합니다.프레임워크 및 라이브러리 요구사항JPA 등 ORM에서는 기본 키를 Long (또는..
- Total
- Today
- Yesterday
- React
- nl2br
- MainActor
- System.Diagnostics
- 스프링 프레임워크(spring framewordk)
- 인텔리제이(intellij)
- 스프링 시큐리티(spring security)-http basic 인증
- 스프링 프레임워크(spring framework)
- await
- In App Purchase
- .submit()
- REST API
- 제품 등록
- java.sql
- java 키워드 정리
- docker
- 특정 문자를 기준으로 자르기
- error-java
- 람다식(lambda expression)
- system.io
- 스프링 시큐리티(spring security)
- 표현 언어(expression language)
- java web-mvc
- java-개발 환경 설정하기
- 문자 자르기
- 메이븐(maven)
- 진수 변환
- jstl(java standard tag library)-core
- jstl(java standard tag library)
- jsp 오픈 소스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |