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

2024. 9. 26. 16:53·Spring boot
💡
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 대상 
@RequestMapping("/post")
public class PostApiController {

    // 주소 설계 
    // http://localhost:8080/post/demo1    METHOD - Post 
    // 테스트 데이터  - { "name" : "둘리", "age": 11 }
    // return String 
    @PostMapping("/demo1")
    // 사용자가 던진 데이터를 바이딩 처리 -> HTTP 메세지 바디 영역 
    public String demo1(@RequestBody Map<String, Object> reqData) {
        // POST --> 리소스 취득, 생성 --> DB 접근기술 --> 영구히 데이터를 저장 한다. 
        StringBuffer sb = new StringBuffer();
        reqData.entrySet().forEach( (entry) -> {
            sb.append(entry.getKey() + " = " + entry.getValue());
        });
        // 메세지 컨버터가 동작 (리턴 타입 String )
        return sb.toString();
    }
    

}

실행 결과_____


'Spring boot' 카테고리의 다른 글

[Spring boot] JPA 와 하이버네이트란?  (0) 2024.10.01
[Spring boot] 스프링 부트 DB 접근 기술 ORM  (1) 2024.10.01
[Spring boot] GET 방식과 URL 주소 설계  (1) 2024.09.26
[Spring Boot] Bank App (9) - MainController, mainPage.jsp 구현  (0) 2024.08.14
[Spring Boot] Bank App (8) - 화면 구현 _2(레이아웃 분리)  (0) 2024.08.14
'Spring boot' 카테고리의 다른 글
  • [Spring boot] JPA 와 하이버네이트란?
  • [Spring boot] 스프링 부트 DB 접근 기술 ORM
  • [Spring boot] GET 방식과 URL 주소 설계
  • [Spring Boot] Bank App (9) - MainController, mainPage.jsp 구현
미로910
미로910
개발자를 꿈꾸는 민경이의 기록 블로그
  • 미로910
    개발 note
    미로910
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 설치 메뉴얼
      • HTML
      • JAVA
        • Java 기초
        • Java 응용
        • 자료구조
        • HTTP
        • JSP 프로그래밍
      • MySQL
        • MySQL 기본
        • 1일 1쿼리
      • CSS
      • Spring boot
      • JS
        • 게시판 만들기
      • Git
      • Flutter
        • MVVM 활용
        • 심화 버전
        • 1일 1 Flutter
      • 디자인 패턴의 활용
      • error note
      • My Project
        • [졸작] LLM 기반 특허 유사도 분석 시스템
        • 도서 관리 프로그램 (final project)
        • amigo
        • 친구 매칭 프로그램(FMP)
      • Python
      • 딥러닝
      • 네트워크
      • 공부 노트
        • 연구회
        • 자료구조
      • 기타
  • 블로그 메뉴

    • 홈
    • 전체보기
    • -----------------------
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
미로910
[Spring boot] POST 방식에 이해 및 실습
상단으로

티스토리툴바