본문 바로가기

전체 글

[SpringBoot] RestAPI - 서버간 통신, @RestController, GET방식, POST방식 REST API란? 기존의 Controller는 return에 Model을 담아서 뷰에 전달하는 방식으로 사용했었는데, REST API는 서버간 통신을 위한 Controller(클라이언트 서버 통신도 가능)이다 @RestController는 return에 처리하는 데이터를 조금 다른 타입으로 처리하는데, 객체(데이터)를 반환할 수 있고 객체(데이터)를 받을 수도 있게 처리한다 그러면 어떻게 보내고 어떻게 받는 건데요? 바로! JSON(JavaScript Object Notation) 핸들러 어댑터의 데이터 처리방식 기존에는 요청을 핸들링 하는 단계에서 어노테이션 기반으로 데이터를 처리했다 가능한 이유? 내부적으로 Argument Resolver가 동작하여 데이터를 맵핑하기 때문이다 스프링에서 값을 받는 .. 더보기
[SpringBoot] 제이쿼리 환경설정 및 문법 ( ajax 통신, 이벤트 함수 등 ) 자바스크립트 vs 제이쿼리 자바스크립트 웹 페이지를 동적으로 표현해주는 언어 예시) 경고창 & 확인창 & drop다운 기능 & 탭 기능 등 제이쿼리 자바스크립트를 더 간편하게 사용하게 해주는 자바스크립트 라이브러리이다 Jquery를 사용하면 순수 자바스크립트로 코딩하는 것보다 높은 생산성을 기대할 수 있다 ✅ 제이쿼리의 장점 1️⃣ 태그를 선택자로 한번에 선택하는 강력한 방법을 제공 2️⃣ 선택자로 선택한 태그를 제어하는 강력한 기능을 제공 Jquery를 사용하는 방법에는 2가지가 있는데 우리 수업은 직접 다운로드를 해서 사용했다 👩‍💻다운로드 해서 적용하는 방법은 다음과 같이 하면 된다! 1️⃣ 구글창에 Jquery를 검색해서 홈페이지로 들어간다 2️⃣ 홈페이지에 들어가서 메뉴에 있는 다운로드를 누른다.. 더보기
[SpringBoot] 유효성 검사(Validation) 유효성 검사 ( Validation ) validation은 어떤 데이터의 값이 유효한지, 타당한지 확인하는 것을 의미한다 UI에서 JavaScript로 "이메일 양식이 일치하지 않는다"라고 보내는 것은 UX측면에서 사용자의 편의를 위함이다 보안적인 측면에서 UI, 서버 둘 다 유효성 검사가 수행되어야 한다 스프링, 스프링 부트 모두 적용 가능하다 스프링 부트 2.3버전 이후 Spring Boot Starter Validation 라이브러리 필요하다! 1️⃣ Maven Repository에 들어가서 "Spring validation"이라고 검색하면 다음과 같은 "Spring Boot Starter Validation"을 클릭한다 2️⃣ version은 어느 것으로 해도 상관없다 ( why? 어차피 스프링.. 더보기
[SpringBoot] 판매자 관리 페이지 프로젝트(실습) - 공통 부분 템플릿화 하기, 상품 등록 기능 구현 판매자 매니저 1️⃣ 구현 순서 2️⃣ 페이징 처리 3️⃣ 검색 처리 ( 동적 쿼리 ) 판매자 매니저 ( Sales Manager )란? 애플리케이션의 종류에는 일반 유저가 사용하는 application, 공무원, 회사, 기관, 학교, 연구소 등에서 특정 유저가 사용하는 application이 있다 B2B(Business-to-Business)은 기업과 기업 사이의 거래를 기반으로 만들어진 프로젝트이다 이번에 진행할 프로젝트는 인터파크, 11번가, 쿠팡 같은 사이트의 판매자로 등록된 사람들이 물건을 등록하는 application의 일부이다 데이터 베이스를 연결을 통해 다음과 같이 처리할 예정이다 게시판 구현 순서는 다음과 같이 진행될 것이다 1️⃣ 테이블 생성 2️⃣ VO, DAO, Controller,.. 더보기
[SpringBoot] 타임리프 문법의 모든 것(변수, 출력문, 조건문, 반복문, include, 내장함수 등)과 실습 타임리프란? 타임리프는 Java 라이브러리이며 텍스트, HTML, XML, Javascript, CSS 그리고 텍스트를 생성할 수 있는 템플릿 엔진이다 스프링 MVC와의 통합 모듈을 제공하며, 애플리케이션에서 JSP로 만든 기능들을 완전히 대체할 수 있다 Spring Boot에서는 JSP가 아닌 타임리프 사용을 권장하고 있다 dependencies { ...생략 // 타임리프 implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' 타임리프 문법 타임리프를 최상단에 xmlns:사용명을 반드시 명시한다 ⭐ 다른 건 몰라도 이건 알아야 한다!! 설명 표현.. 더보기
[React] 라우터 총정리본 (이것만 보면 반은 먹고 들어간다! ) 더보기
[React] 라우터 (useNavigate, Navigate, Link 등) SPA ( Single Page Application ) : 하나의 페이지로 만들어진 어플리케이션 전통적 웹 어플리케이션 vs SPA SPA는 html파일을 브라우저 측에서 로드하고, 필요한 데이터는 API와 ajax통신을 이용해서 처리한다 브라우저에서 사용자가 상호작용 하면 필요한 부분만 업데이트해서 처리한다 멀티플랫폼 Android, IOS에 대응하여 웹뷰로 처리하는 목적으로도 사용된다 SPA의 단점 1️⃣ 앱의 규모가 커지면, JS파일도 너무 커져서 로딩이 오래걸리게 된다 2️⃣ 브라우저에서 렌더링이 완료되기 까지 비어있는 화면이 나오게 된다 3️⃣ 규모가 큰 어플리케이션은 SSR(서버사이드 렌더링) 방식으로 처리한다 (웹팩 설정 필요) 라우팅이란? 브라우저의 주소상태에 따라 다양한 화면을 보여주도.. 더보기
[React] Hook(훅) - useState, useEffect, useRef, useReducer 훅(HOOK) 이란? 리액트 컴포넌트는 클래스형 컴포넌트(Class component)와 함수형 컴포넌트(Functional component)로 나뉜다 리액트 훅은 새로운 기능으로 React 16.8버전에 새로 추가된 기능으로 함수형태의 컴포넌트에서 사용되는 몇 가지 기술을 Hook이라고 부른다 (useState, userEffect 등) 리액트 훅은 함수형 컴포넌트가 클래스형 컴포넌트의 기능을 사용할 수 있도록 해주는 기능이다 Hook의 규칙 1️⃣ 최상위에서만 Hook을 호출해야 한다 2️⃣ 반복문, 조건문, 중첩된 함수 내에서 Hook을 실행하면 안 된다 3️⃣이 규칙을 따르면 컴포넌트가 렌더링 될 때마다 항상 동일한 순서로 Hook이 호출되는 것이 보장된다 4️⃣ 리액트 함수 컴포넌트에서만 Ho.. 더보기