Skip to content

Commit

Permalink
mypageController json 반환형식으로 변경
Browse files Browse the repository at this point in the history
  • Loading branch information
Haaein committed May 16, 2023
1 parent 40bdd65 commit cd6ec39
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 23 deletions.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -6,48 +6,40 @@
import com.study.board.service.UserService;
import org.python.antlr.op.In;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpSession;
import java.util.List;

@Controller
@RestController
public class MyPageController {
@Autowired
private UserService userService;
@Autowired
private FreeboardService freeboardService;

@GetMapping("/mypage")
public String mypage(HttpSession session, Model model) {
Object obj = session.getAttribute("user"); //사용자 정보 받아서 오브젝트로 만들기
@ResponseBody
public ResponseEntity<?> mypage(HttpSession session) {
Object obj = session.getAttribute("user"); // 사용자 정보 받아서 오브젝트로 만들기
if (obj == null) {
return "redirect:/login";// user가 없는 경우 예외 처리
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body("사용자가 로그인되어 있지 않습니다.");
} else {
//사용자 id를 Long 타입으로 변환
// 사용자 id를 Long 타입으로 변환
Long userId = Long.parseLong(obj.toString());
//사용자 정보 불러오기
model.addAttribute("user", userService.getUserInfo(userId));
// 사용자 정보 불러오기
User user = userService.getUserInfo(userId);

//freeboard에서 사용자가 작성한 글 불러오기
/*
* 1. 사용자 id를 기준으로 contentId를 찾기. getFreeboardById는 contentId 기준 함수
* 2. contentId를 사용해서 각 게시글을 찾기
* 3. 찾은 게시글들을 List 형식으로 묶든 해서 html에 보낼 수 있게 하기
* */

List<Freeboard> contentIds = freeboardService.getContentByUserId(userId); //getContentByUserId는 userId로 작성된 contentId를 Freeboard 타입 List로 반환한다.
model.addAttribute("userFreeboard", contentIds); //반환받은 List를 userFreeboard라는 이름으로 전달한다.
// freeboard에서 사용자가 작성한 글 불러오기
List<Freeboard> userFreeboards = freeboardService.getContentByUserId(userId);

return ResponseEntity.ok().body(userFreeboards);
}

return "users/mypage";
}
}




0 comments on commit cd6ec39

Please sign in to comment.