freelec-springboot2-webservice icon indicating copy to clipboard operation
freelec-springboot2-webservice copied to clipboard

[질문] [오류] p.188 직렬화가 가능한 sessionUser 클래스를 사용하는 이유를 잘 모르겠습니다.

Open 8wlgns opened this issue 1 year ago • 0 comments

어떤 오류인가요?

오류설명: 오류라기보단, 질문입니다! p188에 보면 mustache에서 사용할 user의 이름 정보를 user클래스가 아닌, 직렬화 기능을 가진 sessionDto user를 생성해서 model에 추가한다고 되어 있습니다. 그런데 user로 사용해도 잘 되는 것 같습니다. 직렬화의 사용이유를 잘 모르겠어서 질문드려요!

IndexController.java

		@GetMapping("/")
		public String index(Model model) {
			model.addAttribute("recipes", recipeService.findAllDesc());
			//SessionUser user = (SessionUser) httpSession.getAttribute("user");
			User u = (User) httpSession.getAttribute("user");
			if (u != null) {
				model.addAttribute("userName", u.getName());
			}
			return "index";
		}

CustomOAuth2UserService.java

		User user = seveOrUpdate(attributes);
		
		httpSession.setAttribute("user", user);
		
		return new DefaultOAuth2User(
				Collections.singleton(new
						SimpleGrantedAuthority(user.getRoleKey())),
						attributes.getAttributes(),
						attributes.getNameAttributeKey());

프로젝트 주소

  • Github URL: https://github.com/8wlgns/freelac-springboot2-recipebook/blob/master/src/main/java/com/recipe/book/config/oauth/CustomOAuth2UserService.java#L48

오류 로그

어떤 오류인지 캡쳐해주세요.

8wlgns avatar Nov 06 '23 23:11 8wlgns