Open Chris940915 opened 3 years ago
Django
게시판과 같은 목록이 주어져있을 때, 페이지 당 몇 개의 글을 보여줄지 지정할 수 있도록 도와주는 모듈.
from django.core.paginator import Paginator
def board_list(request):
boards_all = Board.objects.all().order_by('-id')
page = int(request.GET.get('p', 1)) # 없으면 1로 지정.
paginator = Paginator(boards_all, 5) # 한 페이지 당 몇개씩 보여줄 지 결정
boards = paginator.get_page(page)
https://velog.io/@aidenshin/DTO%EC%97%90-%EA%B4%80%ED%95%9C-%EA%B3%A0%EC%B0%B0
@RequestBody
@Valid
@Data
@RestController
@Controller + @ResponseBody의 축약형. REST API controller를 선언할 때, 많이 사용. @ResponseBody에서 그렇듯, 리턴 값을 view resolver로 매핑하지않고 @HttpMessageConverter로 매핑.
@NotEmpty 필수값
lombok
@GetMapping, @RequestMapping
Spring boot이 동적으로 url mapping 을 어떻게 하는지 궁금해서 찾아보던 중 RequestMapping을 알게되었다.
그동안 자연스럽게 사용한 @GetMapping 은 @RequestMapping(method = RequestMethod.GET)의 축약형. annotation만 보고 무슨 메서드 요청인지 바로 알아볼 수 있게 만든다.
@RequestMapping은 url당 하나의 컨트롤러가 매핑되던 다른 핸들러 매핑과 달리 메서드 단위까지 세분화하여 적용할 수 있음. (이게 무슨 말?) url 뿐만 아니라 파라미터, 헤더 등 넓은 범위에 적용 가능.
내 목표는 프로젝트에서 여러가지 화면을 동적으로 매핑 해주는것으로 RequestMapping에 주소 경로 설정할때 {id값}으로 설정하고, (@PathVariable("id값") 받고싶은 형태 변수명 )을 입력해주면 끝.