ํ๋ก์ ํธ ์์ฑ
dependency ⇒ pom.xml
- JPA
- Spring web → embedded tomcat ์คํ ๊ฐ๋ฅ
REST API ์ค๊ณ
๊ตฌ์กฐ ํ์ธ
application.properties → yml ํ์ผ๋ก!
์คํ๋ง ๋ถํธ ํ๊ฒฝ์ค์ ์ง์
pom.xml
์ ์ฒด ํ๋ก์ ํธ์ ํ์ํ maven ์ค์
Controller
RESTController ํด๋์ค๋ก ์๋ํจ(์ผ๋ฐ MVC Controller์๋ ๋ค๋ฆ)
@RestController
- Mapping
// GET
@RequestMapping(method=RequestMethod.GET, path="/hello-world")
@GetMapping(path = "/hello-world")/
Bean
์คํ๋ง์์ ์ ์ธ๋์ด ๊ด๋ฆฌ๋๋ ์ธ์คํด์ค ⇒ ์์กด์ฑ ์ฃผ์ ์ผ๋ก ๊ด๋ฆฌ๋จ
- BEAN ํ์ : ๊ธฐ๋ณธ)JSON ํ์์ผ๋ก ๋ณํ๋์ด ๋ฐํ๋๋ค
// Bean
@Data
@AllArgsConstructor -> ๋ชจ๋ ์์ฑ์
@NoArgsConstructor -> ๊ธฐ๋ณธ ์์ฑ์
DispatcherServlet๊ณผ ํ๋ก์ ํธ ๋์์ ์ดํด
๋์ ์๋ฆฌ
1) application.yml → ์ค์ ์ด๋ฆ: ๊ฐ
2) application.properties → ์ค์ ์ด๋ฆ=๊ฐ
server:
port: 8088
logging:
level:
org.springframework: DEBUG
DispatcherServlet → “/”
ํด๋ผ์ด์ธํธ์ ๋ชจ๋ ์์ฒญ์ ํ ๊ณณ์ผ๋ก ๋ฐ์์ ์ฒ๋ฆฌ
→ ์์ฒญ์ ๋ง๋ handler๋ก ์์ฒญ ์ ๋ฌ
→ handler์ ์คํ ๊ฒฐ๊ณผ๋ฅผ http response ํํ๋ก ๋ง๋ค์ด์ ๋ฐํ
http request → dispatcher servlet → handler mapping → REST controller → http response
RestController
@RestController
→ @Controller
+ @RequestBody
View๋ฅผ ๊ฐ์ง ์๋ REST Data(JSON/XML) ๋ฐํ(์๋์ผ๋ก ResponseBody์ ๋ฃ์ด์ค)
Path Variable
์ด ๋ณ์๊ฐ ๊ฐ๋ณ ๋ฐ์ดํฐ๊ฐ ๋ ๊ฒ์ด๋ค ๋ผ๋ ๊ฒ์ ๋ช ์
@GetMaping(path="/intro/{name}")
public HelloWorldBean helloWorldBean(@PathVariable String name){
return new HelloWorldBean(String.format("Hello World, %s", name));
}
[๋ค๋ฅธ ๊ฐ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ]
@GetMaping(path="/intro/{name}")
public HelloWorldBean helloWorldBean(@PathVariable(value="hey")String name){
return new HelloWorldBean(String.format("Hello World, %s", name));
}
'๐ฟ Spring > โ RESTful Web Service' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
5. Java Persistence API ์ฌ์ฉ (0) | 2023.06.20 |
---|---|
4. Spring Boot API ์ฌ์ฉ (0) | 2023.06.20 |
3. RESTful Service ๊ธฐ๋ฅ ํ์ฅ (0) | 2023.06.20 |
2. User Service API ๊ตฌํ (0) | 2023.06.20 |
0. Web Service & Web Application (0) | 2023.06.20 |
๋๊ธ