[B -2-36] Ajax 댓글 처리 9
2019. 10. 8. 22:33ㆍProject B (SPMS)/Project B 파트5
반응형
특정 게시글의 댓글 목록 확인
src/main/java
com.spms.controller
ReplyController.java
getList()
...더보기
package com.spms.controller;
import java.util.List;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.spms.domain.Criteria;
import com.spms.domain.ReplyVO;
import com.spms.service.ReplyService;
import lombok.AllArgsConstructor;
import lombok.extern.log4j.Log4j;
@RequestMapping("/replies/")
@RestController
@Log4j
@AllArgsConstructor
public class ReplyController {
private ReplyService replyService;
@PostMapping(value = "/new", consumes = "application/json", produces = { MediaType.TEXT_PLAIN_VALUE })
public ResponseEntity<String> create(@RequestBody ReplyVO reply) {
log.info("ReplyVO: " + reply);
int insertCount = replyService.register(reply);
log.info("Reply INSERT COUNT: " + insertCount);
return insertCount == 1 ? new ResponseEntity<>("success", HttpStatus.OK)
: new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
}
@GetMapping(value = "/pages/{bno}/{page}",
produces = {
MediaType.APPLICATION_XML_VALUE,
MediaType.APPLICATION_JSON_UTF8_VALUE
})
public ResponseEntity<List<ReplyVO>> getList(
@PathVariable("page") int page,
@PathVariable("bno") Long bno) {
log.info("getList.................");
Criteria cri = new Criteria(page,10);
log.info(cri);
return new ResponseEntity<>(replyService.getList(cri, bno), HttpStatus.OK);
}
}
Criteria를 이용해서 파라미터를 수집하는데,
/{bno}/{page}의 page 값은 Criteria를 생성해서 직접 처리해야한다.
게시물의 번호는 @PathVariable을 이용해서 파라미터로 처리하고 브라우저에서 아래와 같이 테스트한다.
XML 타입 댓글 조회 테스트 확인
http://localhost/replies/pages/{bno}/1
JSON 타입 댓글 조회 테스트 확인
http://localhost/replies/pages/524314/1.json
반응형
'Project B (SPMS) > Project B 파트5' 카테고리의 다른 글
[B -2-38] Ajax 댓글 처리 11 (0) | 2019.10.09 |
---|---|
[B -2-37] Ajax 댓글 처리 10 (0) | 2019.10.08 |
[B -2-35] Ajax 댓글 처리 8 (0) | 2019.10.06 |
[B -2-34] Ajax 댓글 처리 7 (0) | 2019.10.06 |
[B -2-33] Ajax 댓글 처리 6 (0) | 2019.10.06 |