minsu
@mu16160159
Reviews Written
1
Average Rating
5.0
Posts
Q&A
HATEOAS ์ง๋ฌธ
๊ฐ์ฌํฉ๋๋ค!!
- 0
- 5
- 611
Q&A
HATEOAS ์ง๋ฌธ
์ํ.. ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค!! ์ ๋ JsonFilter ์ ์ฉ์์ผ๋ณด๊ณ ์ถ์ด์ ์๋์ฒ๋ผ ์ฝ๋๋ฅผ ์งฏ๋๋ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์์๊น์??? Resorce ๋ฅผ ๋ฐํ๊ฐ์ผ๋ก ํ๋ ค๋๊น ์ค๋ฅ๊ฐ ๋๋๋ผ๊ตฌ์.. @GetMapping("/users/{id}")public ResponseEntity retrieveUser(@PathVariable int id, HttpServletRequest request){ User user = service.findOne(id); if(user == null) { throw new UserNotFoundException(String.format("ID[%s] not found", id)); } // HATEOAS //retrieveAllUsers ๋ฉ์๋(/users)๋ฅผ "all-user" ์ ์ฐ๊ฒฐ Resource resource = new Resource(user); /* ControllerLinkBuilder linkTo = ControllerLinkBuilder.linkTo( ControllerLinkBuilder.methodOn(this.getClass()).retrieveAllUsers()); */ resource.add(new Link(request.getRequestURL().toString()).withSelfRel()); resource.add(linkTo(methodOn(UserController.class).retrieveAllUsers()).withRel("all-users")); SimpleBeanPropertyFilter filter = SimpleBeanPropertyFilter //์๋์ ํ๋๋ค์ ๊ฐ์ ธ์จ๋ค. JsonIgnore ๋์ด์๋ ๊ฒฝ์ฐ ๊ฐ์ ธ์ค์ง ์์. .filterOutAllExcept("id", "name", "joinDate"); FilterProvider filters = new SimpleFilterProvider().addFilter("UserInfo", filter); MappingJacksonValue mapping = new MappingJacksonValue(resource); mapping.setFilters(filters); return ResponseEntity.ok(mapping);}
- 0
- 5
- 611




