스프링을 시작해보려고 하는데 처음부터 하려면 공식 문서를 보고 작업하는 게 좋을거같아
이렇게 시작하게 되었습니다!
먼저 Getting Started에 Queckstart Guide로 들어가줍니다
저는 intelliJ와 JDK17을 사용해서 작업을 시작해보려고합니다
다음을 참고해주세요!
1단계 : spring Boot 프로젝트 시작
여기서 spring web을 추가합니다. 그 후 generate를 눌러서 생성하고 다운로드 된 파일을 압축을 풉니다
2단계 : 코드 추가
이제 IDE에서 프로잭트를 열고 DemoApplication.java에서 파일을 찾습니다
(위에서 만든 arfifact 이름이 클래스 이름에 사용됩니다)
이제 아래 코드에 표시된 추가 메서드와 주석을 추가해 파일을 내용을 변경합니다
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@GetMapping("/hello")
public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
return String.format("Hello %s!", name);
}
}
이것은 spring boot에서 간단한 hello world웹서비스를 만드는데 필요한 모든 코드입니다
hello()는 name이라는 문자열 매개변수를 취하도록 설계되었으며 매개변수를 코드의 단어와 결합합니다
📥사용된 어노테이션📥
@RestController : spring에게 이 코드가 웹에서 사용할 수 있는 엔드포인트를 정의하고 있다고 알려줌
이 클래스가 HTTP요청을 처리할 준비가 되어있음을 spring에게 알림
@GetMapping("/hello") : /hello 경로로 들어오는 http 요청을 hello()메서드로 처리하라고 spring에 지시한다
특정 경로로 들어오는 get요청을 처리
(예를들어, http://localhost:8080/hello로 요청이 오면 hello() 메서드가 호출됨)
@RequestParam은 요청에서 name이라는 값을 기대한다고 spring에게 요청, 기본값은 world이다
HTTP요청에서 들어오는 Query Parameter 를 받아온다
📍?<궁금한점>📍
📌Query Parameter란?
- 웹 애플리케이션에서 클라이언트가 서버로 데이터를 전송할때 URL의 일부로 포함되는 데이터
- GET요청에서 사용됨, URL뒤에 ?로 시작하고 key=value형식으로 데이터를 전달한다
📌 RestController는?
- REST = representational State Transfer의 약자
- Controller = 웹 애플리케이션에서 HTTP 요청을 처리하고 응답을 반환하는 역할
RestController = @Controller(view를 반환하는 MVC 컨트롤러)
+ @ResponseBody(메서드의 반환 값을 HTTP응답 본문으로 직접 반환함)
->즉, JSON, XML형식의 데이터를 반환하는 REST API를 쉽게 만들 수 있도록 한다
📝사용예시📝
http://localhost:8080/hello?name=Ehyeon -> Hello Ehyeon출력
3단계 : 시작
위에 버튼으로 빌드하고 실행해서 스프링을 실행합니다
이렇게 뜨면 성공!
localhost:8080/hello에 접속 ->
📍?name=을 쓰면 어떻게될까
이렇게 적용되는 모습을 볼 수 있습니다!
🔍다음에 할것
다음은 RESTful web service를 학습해보겠습니다
RESTful 웹 서비스는 HTTP 메서드를 사용해 자원을 처리하는 api입니다
URL 구조와 JSON형식의 데이터를 주로 사용합니다
'spring > spring Boot' 카테고리의 다른 글
스프링 환경 갖추기 (0) | 2024.12.18 |
---|---|
RESTful 웹 서비스 사용 (0) | 2024.11.25 |
RESTful 웹 서비스 구축 (1) | 2024.11.21 |