포워딩과 리디렉팅
알고보니 controller에서 view를 return하는 것이 포워딩이었다. 로그인 실패 페이지를 구현하다가 알게 되었다. 특징으로는 포워딩이 되어도 url이 바뀌지 않는다.
예외 처리
try-catch 방식으로는 메서드 단위로 예외처리를 해야한다. 하지만 스프링에서 지원하는 예외처리 방식이 있다.
@ExceptionHandler를 사용하면 Controller 단위로 발생하는 예외를 처리해줄 수 있다.
@ControllerAdvice를 사용하면 모든 Controller의 예외를 처리해줄 수 있다. 이름에 Advice가 들어가는 것으로 보아 AOP와 관련이 있어 보인다.
로그인 테스트 시, 세션 값은 어떻게 검증할까?
loginController의 테스트 코드 작성 시 로그인이 수행되고 뷰에 세션값이 잘 넘어갔는지 검증하고 싶은데 계속 null이 나왔다. 어떻게 검증할 지 찾아봐도 잘 안나왔는데 Riako
선생님이 하셨다고 하니 코드를 나중에 참고해봐야 겠다.
EC2를 통해 MySQL을 설치하고 서버를 띄우는 법
나중에 녹화강의를 보며 복습해야겠다. 인프라도 처음엔 공포스러웠지만 요즘은 서버를 구축하는 것이 재밌어보인다. 하지만 그만큼 할게 끝이없다.