2024/09 33

[Spring boot] POST 방식에 이해 및 실습

💡1. JSON 이해 2. POST 주소 맵핑, @RequestBody를 Map 구조로 설정 3. JSON 형식을 만들고 POST 방식으로 데이터 보내기 4. DTO 만들어서 사용해보기5. @JsonProperty 사용해 보기      -스네이크 케이스와 카멜케이스 구분 💡 JSON 데이터 타입 확인문자열 ("name": "John")숫자 ("age": 30)불리언 ("isStudent": false)객체 ("address": { "city": "New York", "zipCode": "10001" })배열 ("hobbies": ["reading", "traveling", "swimming"])null ("middleName": null) 시나리오 코드@RestController // IoC 대상 @..

Spring boot 2024.09.26

[Spring boot] GET 방식과 URL 주소 설계

REST API 기반으로 주소 맵핑 처리 1. GET 방식에 주소 맵핑 2. 클라언트에서 보낸 값을 받는 방식에 이해 응답에 이해 3. Path Variable 방식으로 값을 보내거나 받는 방식에 이해 4. Query Parameter 방식으로 값을 받는 방법 이해  - key=value 구조 데이터 파싱 처리 - Map 사용 방식 구조 처리 - Dto 객체를 만들어서 처리 💡 멱등성(Idempotency)이란 같은 작업을 여러 번 수행해도 결과가 달라지지 않는 성질을 의미합니다. 이 개념은 특히 HTTP 메서드나 데이터베이스 연산에서 자주 사용됩니다.멱등성을 가짐 (GET, PUT, DELET ) 비 멱등성을 가짐 (POST)멱등성의 의미?안정성: 멱등성을 가진 연산은 중복 요청에 대해 안전합니다. ..

Spring boot 2024.09.26

[JPA] 스프링 부트 간단한 요청과 응답 동작 방식을 알아보자.

💡1. 디스패처 서블릿에 대해서 알아 보자. 2. 메시지 컨버터와 뷰 리졸버를 기억해 보자.  스프링 부트 그림으로 요약한 요청과 응답에 흐름 살펴 보기클라이언트 측에서 /user로 GET 요청을 합니다. 이 요청은 톰캣을 거쳐 스프링 부트 애플리케이션으로 전달됩니다.이때, 스프링 부트의 **디스패처 서블릿(DispatcherServlet)**이 요청을 받습니다. 디스패처 서블릿은 요청된 URL을 분석하고, 이를 처리할 수 있는 컨트롤러와 해당 메서드를 찾습니다.컨트롤러에서 비즈니스 로직이 필요한 경우, 비즈니스 계층(Service) 및 퍼시스턴스 계층(Repository)을 통해 데이터를 처리합니다.응답 과정에서 MIME 타입(예: JSON, HTML, XML 등)에 따라 다음과 같이 응답 방식이 달..

카테고리 없음 2024.09.26

[JPA] 스프링 부트의 웹 애플리케이션 구조 어떻게 만들어져 있을까?

💡1. MVC 패턴이란? 2. 레이어드 아키텍처란? 1. MVC 패턴 (Model-View-Controller)MVC 패턴은 애플리케이션의 기능을 세 가지 역할로 분리하는 구조입니다:Model (모델): 데이터와 비즈니스 로직을 관리합니다.View (뷰): 사용자에게 데이터를 시각적으로 보여줍니다.Controller (컨트롤러): 사용자의 요청을 받아 모델을 통해 처리하고, 결과를 뷰에 전달합니다.이 패턴은 애플리케이션의 UI 로직과 데이터 처리 로직을 분리하여 코드의 가독성을 높이고, 유지보수를 쉽게 합니다.  2. 레이어드 아키텍처 (계층 구조) 레이어드 아키텍처는 애플리케이션을 세 가지 주요 계층으로 나누어 각각의 책임을 명확히 하는 구조를 말합니다.프레젠테이션 계층 (Presentation L..

카테고리 없음 2024.09.26

[JPA] 스프링 부트 핵심 콘셉트가 뭘까?

💡1. 제어의 역전(IoC)과 의존성 주입(DI) 2. 빈(Bean)과 스프링 컨테이너 3. 관점 지향 프로그래밍(AOP) 4. 이식 가능한 서비스 추상화(PSA) 전 기반 지식1. 스프링 프레임워크(Spring Framework)일반적인 정의: 스프링 프레임워크는 자바 플랫폼을 위한 강력한 애플리케이션 프레임워크입니다. 객체 지향 프로그래밍의 원칙에 기반하여 애플리케이션을 구성하고 관리하는 방식으로, 주로 엔터프라이즈급 애플리케이션을 구축할 때 사용됩니다.설정 방식: 스프링은 초기 설정이 복잡할 수 있습니다. XML 설정 파일이나 자바 기반의 설정 클래스를 통해 다양한 기능을 직접 구성해야 합니다.기능: 스프링은 의존성 주입(DI), AOP(관점 지향 프로그래밍), 트랜잭션 관리, 데이터 액세스, 웹..

카테고리 없음 2024.09.26

[POST 방식] 포스트맨(postman) & talend api 설치 및 사용 방법

Download Postman | Get Started for FreeTry Postman for free! Join 30 million developers who rely on Postman, the collaboration platform for API development. Create better APIs—faster.www.postman.com  Talend API Tester - Free Edition - Chrome 웹 스토어Visually interact with REST, SOAP and HTTP APIs.chromewebstore.google.compostman과 talend api을 사용해서 post 방식으로 던질 수 있다포스트맨 화면 포스트맨 사용해 보기 talend api 화면 p..

설치 메뉴얼 2024.09.26

6일차 - 소셜 로그인 최초 회원가입 문제점 해결

소셜 로그인을 하면 ID값을 받아오고, 비밀번호는 제외해야 되는데 여기서 문제가 생겼다1. 어떻게 제외할 것인가2. DB null값3. 소셜 로그인 회원가입(최초로그인)과 일반 회원가입을 어떻게 구분할 것인가4. 유효성 검사hidden으로 숨기면 비밀번호 값이 null 값이 되니까 오류가 생긴다...또한 소셜 로그인 회원가입과 일반 회원 가입을 구분해야 되기 때문에Core Tags를 사용해서 코드를 짜기로 했다 회원가입 아이디 아이디 중복체크 비밀번호 비밀번호 ..

[디자인 패턴의 활용] 어댑터 패턴

💡1. 어댑터 패턴의 개념과 목적을 간략하게 설명할 수 있다. 2. 어댑터 패턴을 활용한 코드를 작성하고, 동작 방식을 설명할 수 있다. 3. 어댑터 패턴의 실무 활용 사례를 이해하고 설명할 수 있다.   사전 기반 지식객체지향 프로그래밍(OOP): 클래스와 객체의 개념, 상속과 인터페이스에 대한 기본적인 이해.다형성: 상위 클래스나 인터페이스를 통해 다양한 하위 클래스를 처리하는 능력.호환성 문제: 서로 다른 인터페이스를 가진 클래스 간의 호환성 문제 해결을 위해 어댑터 패턴을 사용하는 상황을 이해해야 한다.  어댑터 패턴 이란(Adapter Pattern)?어댑터 패턴은 호환되지 않는 인터페이스를 가진 클래스들을 함께 동작할 수 있도록 변환해주는 디자인 패턴입니다.즉, 기존 클래스의 인터페이스가 요..

추상화와 다형성

추상화와 다형성은 객체 지향 프로그래밍(OOP)의 핵심 개념 중 두 가지로 코드의 유연성과 재사용성을 높이는 데 중요한 역할을 한다.  1. 추상화 (Abstraction)추상화는 객체의 세부 사항을 숨기고, 중요한 특징만을 드러내는 과정입니다.이를 통해 복잡한 시스템을 간결하고 이해하기 쉽게 만들 수 있습니다. 즉, 복잡한 실제 시스템을 단순한 모델로 표현하는 방식입니다. 특징: 구체적인 구현을 숨김: 사용자는 객체의 세부적인 구현 방식이 아닌, 기능만을 볼 수 있습니다.추상 클래스와 인터페이스를 활용: 추상화를 달성하기 위해 주로 추상 클래스와 인터페이스를 사용합니다. 추상 클래스는 일부 구현을 가질 수 있지만, 인터페이스는 모든 메서드가 구현되지 않은 형태로 제공됩니다.   2. 다형성 (Polym..

공부 노트 2024.09.26

[디자인 패턴의 활용] 팩토리 패턴

💡1. 팩토리 패턴의 정의와 목적을 간단하게 설명할 수 있다. 2. 팩토리 패턴을 활용해 객체 생성 과정을 캡슐화할 수 있다. 3. 팩토리 패턴이 실무에서 활용되는 사례를 이해하고 예를 들어 설명할 수 있다.  사전 기반 지식객체 지향 프로그래밍: 클래스와 객체 생성에 대한 기본 개념.추상화: 구현과 인터페이스를 분리하는 개념.다형성: 상위 클래스나 인터페이스를 통해 다양한 하위 클래스를 처리하는 능력 팩토리 패턴이란(Factory Pattern)? 팩토리 패턴은 객체 생성 로직을 감추고, 클라이언트(사용자)가 어떤 객체를 생성할지 결정만 하면 내부적으로 그 객체를 생성하는 패턴입니다.예를 들어 자판기는 다양한 음료를 제공하는데, 사용자가 음료를 선택하면 자판기가 내부에서 해당 음료를 준비해줍니다. 사..