일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 에라토스테네스의 체
- DEBUG
- struct
- ifdef
- Wait
- Kafka
- 자식
- endif
- 10989
- container
- signal
- 구조체
- 2025
- fread()
- 백준
- fwrite()
- 정보처리기사
- Docker
- scanf()
- fork
- 1929
- 필기
- sizeof()
- fgets()
- pack
- half-close
- strlen()
- handling
- 카운팅 정렬
- EOF
- Today
- Total
팥빵 먹으면서 코딩하는 블로그
controller 00. 본문
- controller란?
client의 요청을 처리한 후 지정된 view에 model 객체를 넘겨주는 역할을 한다.
controller는 http 요청을 처리하는데, 하나의 컨트롤러를 사용하면 과부하가 걸릴 수 있으므로
세분화, 분배하여 controller를 나누어 logic을 짜는 것이 중요하다.
요약) client(모바일, 웹 브라우저 등)가 웹 서버에 데이터나 .html파일과 같은 파일을 요청할 때
웹 서버의 컨트롤러는 DB에 GET(SELECT), POST(INSERT), PUT(UPDATE), DELETE로 요청하고,
DB로부터 응답을 받아 client에게 응답해준다.
- controller의 종류
@Controller //file을 응답하는 컨트롤러 - client가 브라우저면 .html 파일을
@RestController //data를 응답하는 컨트롤러 - client가 휴대폰이면 data를
01. Controller는 .html과 같은 파일을 응답해주는 컨트롤러이다.
-> client가 "웹 브라우저" 일 때 사용한다.
02. RestController는 data를 응답해주는 컨트롤러이다.
-> client가 "모바일"일 때 사용한다.
주의** 두 컨트롤러 annotation은 중복사용되지 않으므로 하나만 설정해준다.
- http 요청 응답하기
각 4가지 요청(GET, POST, PUT, DELETE)을 메소드 앞에 Mapping을 붙인 annotation으로 적어준다.
그 다음 해당 요청이 실행되게 할 경로(end point)를 지정해준다.
01. @Controller일 때는 return에 적은 값이 / resources 폴더 내부의 파일명이 된다.
02. @RestController일 때는 return에 적은 값이 / data가 된다.
http://localhost:8080 이 주소 다음부터 end point를 지정한 method들이 실행된다.
***만약 서버 주소(8080)을 바꿔주고 싶다면
해당 프로젝트의 resources파일의 application.properties에 들어가 server.port = 9090(9090은 임시)을 적어주면 된다.
'study > JAVA SPRING' 카테고리의 다른 글
spring에 대하여 (0) | 2024.08.29 |
---|---|
Object Mapper (0) | 2024.08.29 |
controller 05 - RESPONSE (0) | 2024.08.29 |
controller 04 - delete (0) | 2024.08.28 |
controller 03 - PUT (0) | 2024.08.28 |