Backend/REST API
data class 만들고 @GetMapping으로 data class 호출하기 + Postman 실행결과 + @RestController
brandy_dev
2023. 1. 24. 16:47
Person.kt
package com.example.test_1.domain
data class Person(
val id:Long=1,
val name:String="",
val lastName: String?=null
)
Test1Application.kt
package com.example.test_1
import com.example.test_1.domain.Person
import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.RestController
@SpringBootApplication
@RestController
class Test1Application{
@GetMapping("/")
fun hi(): Person {
return Person()
}
}
fun main(args: Array<String>) {
runApplication<Test1Application>(*args)
}
@GetMapping부분에서 data class로 정의한 Person을 호출하고 리턴해준다.
그 후에는 localhost:8080으로 출력 결과를 보면 data class로 작성했던 Person 데이터 클래스 내부의 data들이 JSON 형태로 반환된다.
만약 @GetMapping("/hi")를 하고 localhost:8080/hi로 하더라도 같은 결과가 출력된다.
@SpringBootApplication
@RestController
class Test1Application{
@GetMapping("/hi")
fun hi(): Person {
return Person()
}
}
Postman 실행결과
localhost:8080
(@GetMapping("/")일 경우)
localhost:8080/hi
(@GetMapping("/hi")일 경우)
@RestController
이 어노테이션이 있어야 spring boot는 이 클래스가 Controller라는 것을 안다.