일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Spring Boot
- SpringJDBC
- STS
- XML
- Di
- 프로퍼티
- @JUnit
- Spring JDBC
- myBatis
- AOP
- Linux
- @Spring-Test
- 리눅스
- spring aop
- Framework
- 컨테이너
- @test
- Ubunt
- JDBC TEMPLATE
- spring
- POJO
- pointcut
- java spring
- 마이바티스
- spring framework
- @AspectJ
- unix
- JdbcTemplate
- java
- Dependency Injection
Archives
- Today
- Total
개키우는개발자 : )
Hello 컨트롤러 본문
반응형
IntelliJ에서 프로젝트 불러오기
- IntelliJ IDEA에서 프로젝트 열기
- IntelliJ IDEA를 열고, 파일 → Open 메뉴를 선택하여 프로젝트가 있는 폴더를 불러옵니다.
- 또는 커맨드 라인에서 IntelliJ를 실행하는 명령을 통해 현재 폴더를 오픈할 수 있습니다.
- 프로젝트 구조 확인
- IntelliJ에서 프로젝트 구조가 잘 보이는지 확인합니다. 이 구조는 Spring Initializer를 통해 만든 것과 동일해야 합니다.
- 만약 IntelliJ가 최신 버전으로 업데이트된 상태라면 초기 설정 과정에서 약간의 호환성 문제로 에러 메시지가 뜰 수 있습니다. 그런 메시지는 무시하고 진행해도 무방합니다.
간단한 기능 추가
이제 간단한 기능을 추가해 보겠습니다. Hello Boot 애플리케이션이니까, /hello라는 URL로 요청을 보내면, 거기에 응답을 하는 간단한 "Hello World" 프로그램을 작성할 것입니다.
- 컨트롤러 작성
- Controller 클래스를 하나 생성합니다. Spring에서 컨트롤러는 웹 요청을 받아 결과를 리턴하는 역할을 합니다.
- REST 방식을 사용해 응답을 처리할 예정이므로, RestController를 사용할 것입니다.
- 코드 작성
- @RestController: 이 클래스가 REST API 컨트롤러임을 표시합니다.
- @GetMapping("/hello"): /hello 경로로 들어오는 GET 요청을 처리합니다.
- 메소드 동작
- 이 컨트롤러는 /hello 경로로 들어오는 GET 요청에 대해, 쿼리 스트링으로 전달된 name 값을 받아 "Hello name"이라는 메시지를 응답으로 반환합니다.
- 코드
package tobyspring.helloboot;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(String name) {
return "Hello " + name;
}
}
애플리케이션 실행 및 테스트
- 애플리케이션 실행
- IntelliJ IDEA에서 프로젝트를 실행합니다. 로그에 출력된 내용을 확인하고 애플리케이션이 정상적으로 실행되었는지 확인합니다.
- 테스트
- 브라우저에서 localhost:8080/hello?name=spring으로 접속합니다. 이때 "Hello spring"이라는 메시지가 출력되면 성공적으로 동작한 것입니다.
- name 파라미터를 바꾸어 다양한 응답을 확인해 볼 수 있습니다.
반응형
'토비의 스프링 부트 - 이해와 원리 > 섹션3 - 스프링 부트 시작하기' 카테고리의 다른 글
HTTP 요청과 응답 (0) | 2024.10.06 |
---|---|
Hello API 테스트 (0) | 2024.10.06 |
프로젝트 생성 (0) | 2024.10.06 |
개발환경 준비 (0) | 2024.10.06 |
Comments