kevin
@cyc02271766
Reviews Written
-
Average Rating
-
Posts
Q&A
service์ controller์ ์ญํ ์ ๋ํ ์ง๋ฌธ์ด ์์ต๋๋ค.
//์๋น์ค๋ฅผ ์ฃผ์ ๋ฐ๋ ์๋น์ค @Service @Transactional(readOnly = true) @RequiredArgsConstructor public class BookComplexService { private final BookInfoService bookInfoService; private final BookService bookService; private final ClubBookUserService cbuService; private final UserService userService; private final PostService postService; @Transactional public Long createBookAndRelated(CreateBookDto createBookDto, Long userId) { BookInfo bookInfo = BookInfo.builder() .name(createBookDto.getName()) .isbn(createBookDto.getIsbn()) .build(); bookInfo = bookInfoService.createOrFindBookInfo(bookInfo); Book newBook = Book.builder() .category(createBookDto.getCategory()) .bookInfo(bookInfo) .build(); Long bookId = bookService.createBookWithValidation(newBook, bookInfo.getIsbn(), userId); User user = userService.findById(userId); ClubBookUser cbu = ClubBookUser.builder() .book(newBook) .user(user) .build(); cbuService.createClubBookUser(cbu); return bookId; }
- Likes
- 2
- Comments
- 5
- Viewcount
- 2.6K
Q&A
service์ controller์ ์ญํ ์ ๋ํ ์ง๋ฌธ์ด ์์ต๋๋ค.
//์์ ํ์ฝ๋ @PostMapping public ResponseEntity createBook(@SessionAttribute(name = SessionConst.LOGIN_USER, required = false) User loginUser, @RequestBody CreateBookDto createBookDto, UriComponentsBuilder b) { Long bookId = bookComplexService.createBookAndRelated(createBookDto, loginUser.getId()); UriComponents uriComponents = b.path("/books/{bookId}").buildAndExpand(bookId); return ResponseEntity.created(uriComponents.toUri()).body(createBookDto); }
- Likes
- 2
- Comments
- 5
- Viewcount
- 2.6K
Q&A
service์ controller์ ์ญํ ์ ๋ํ ์ง๋ฌธ์ด ์์ต๋๋ค.
//๊ธฐ์กด ์ฝ๋ @PostMapping public ResponseEntity createBook(@SessionAttribute(name = SessionConst.LOGIN_USER, required = false) User loginUser, @RequestBody CreateBookDto createBookDto, UriComponentsBuilder b){ BookInfo bookInfo = BookInfo.builder() .name(createBookDto.getName()) .isbn(createBookDto.getIsbn()) .build(); try { bookInfoService.createBookInfo(bookInfo); }catch (IllegalStateException e){ log.info("bookInfoService = {}",e.toString()); BookInfo byIsbn = bookInfoService.findByIsbn(bookInfo.getIsbn()); bookInfo = byIsbn; } Book newBook = Book.builder() .category(createBookDto.getCategory()) .bookInfo(bookInfo) .build(); Long bookId = bookService.createBook(newBook); ClubBookUser cbu = ClubBookUser.builder() .book(newBook) .user(loginUser) .build(); cbuService.createClubBookUser(cbu); UriComponents uriComponents = b.path("/books/{bookId}").buildAndExpand(bookId); // return ResponseEntity.noContent().build().created(uriComponents.toUri()).build(); return ResponseEntity.created(uriComponents.toUri()).body(createBookDto); }
- Likes
- 2
- Comments
- 5
- Viewcount
- 2.6K




