728x90
반응형
SMALL
  • 메인페이지 서버 만들기
@GetMapping("/")
    public List<Blog> getBlog() {
        return blogService.getBlog();
    }
  • 게시글 조회하기 서버 만들기
@GetMapping("/api/blog")
    public List<Blog> getBlog(@PathVariable Long id) {
        return BlogService.getBlog();
    }
@Transactional(readOnly = true)
public List<Blog> getBlog() {
    return blogRepository.findAllByOrderByModifiedAtDesc();
}
  • 게시글 생성하기 서버 만들기
    @PostMapping("/api/blog")
    public Blog createblog(@RequestBody BlogRequestDto requestDto) {
        return BlogService.createblog(requestDto);
    }
@Transactional
    public BlogResponseDto createBlog(BlogRequestDto requestDto) {
        Blog blog = new Blog(requestDto);
        blogRepository.save(blog);
        return new BlogResponseDto(blog);
    
  • 게시글 변경하기 서버 만들기
PutMapping("/api/post/{id}")
    public Long updateBlog(@PathVariable Long id, @RequestBody BlogRequestDto requestDto) {
        return BlogService.updateBlog(id, requestDto);
    }
@Transactional
    public Long updateBlog(Long id, BlogRequestDto requestDto) {
        if (!validatePassword(id, requestDto.getPassword())) {      //비밀번호가 같지 않을 때 사용!
            return -999L;
        }
        Blog blog = blogRepository.findById(id).orElseThrow(
                () -> new IllegalArgumentException("아이디가 존재하지 않습니다.")
        );
        blog.update(requestDto);
        return blog.getId();
    }

 

  • 게시글 삭제하기 서버 만들기
    @DeleteMapping("/api/blog/{id}")
    public Long deleteBlog(@PathVariable Long id, @RequestBody BlogRequestDto requestDto) {
        return BlogService.deleteBlog(id, requestDto.getPassword());
    }
@Transactional
    public Long deleteBlog(Long id, String password) {
        if (!validatePassword(id, password)) {
            return -999L;
        }
        blogRepository.deleteById(id);
        return id;
    }
728x90
반응형
LIST

+ Recent posts