목적
- 클라이언트로부터 요청을 받으면 응답을 해주는 애플리케이션 만들기
- GET /greeting 라는 요청을 보내면 인사말 응답
- GET /greeting?name=brown 라는 요청을 보내면 name 인자를 포함한 인사말 응답
따라하기
- Gradle 프로젝트 구축하기 프로젝트에 이어서 진행
Spring Web Starter 의존성 추가
- 지난번에 spring 프로젝트를 만들면서 추가했으므로 넘어간다.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
}
관리할 객체 만들기
- Greeting 코드 작성하기
- lombok을 따로 설치하지 않았기 때문에 직접 필요한 함수 모두 작성하기
- class 내부에 생성자를 만들어줘야 한다.
public class Greeting {
private final long id;
private final String content;
public Greeting(long id, String content) {
this.id = id;
this.content = content;
}
public long getId() {
return id;
}
public String getContent() {
return content;
}
}
컨트롤러 만들기
- 스프링에서는 웹 요청에 대한 처리 로직을 컨트롤러 이용해서 정의한다.
- 컨트롤러 클래스를 만들고 메서드를 만든 뒤 요청을 메서드에 맵핑한다.
- 이렇게 되면 매핑된 요청이 올 경우, 해당 매서드에서 요청을 처리한다.
- HTTP Method가 GET이고, URL이 /greeting 인 요청이 올 때 greeting 메서드가 동작
- /greeting?name=brown처럼 인자값을 넣어 줄 경우 @RequestParam 을 이용하여 메서드 파라미터로 인자를 받을 수 있다.
- 객체를 그대로 리턴할 경우 자동으로 json 형태로 변환하여 응답
실행하여 테스트하기
- intellij 바로 실행
- gradle 이용해서 실행
- 현재 SpringBootApplication이 2개가 있어서 intellij에서 바로 실행하는 방법만 사용하였다.
BDD 동아리 Spring 스터디 공부 자료를 참고하였습니다.
우테코의 일부 코치님들이 진행하는 프로젝트에서 지원해주셨습니다.
'💻 개발 > Spring' 카테고리의 다른 글
Spring Annotation MVC - Spring MVC (0) | 2023.12.05 |
---|---|
HTTP - Spring MVC (0) | 2023.12.04 |
Gradle 프로젝트 구축하기 (0) | 2023.12.04 |
Framework와 Project (0) | 2023.11.29 |
Repository Interface 메소드 실습 (1) (0) | 2023.07.20 |