Today Error
1) 의도 : Spring Security 프레임워크를 사용하여 로그인 기능을 구현하였다.
2) 에러 발견 : maxRedirects url 포워딩이 너무 많이 된다는 말같다.
왼쪽의 사진과 같이 member테이블 select가 지속적으로 이루어지고 있는 것을 console로 확인.
무엇이 문제인지 알 수 없어 Class내에 자문을 구할 수 있는 팀원? 단원에게 물어보았고,
해결을 할 수 없어 튜터님께 직접 여쭤보았다.
3) 에러의 원인 : SecurityConfig.java파일에 formLongin().loginPage().permitAll() 해당 부분에서
error발생 시 error 포워딩 처리를 해주지 않아서 그런 것 같다고 말씀해주셨다.
말씀해주신 대로 failureUrl()를 사용하여 임의로 error발생시에 / 루트 url로 넘어가게 설정해줌
튜터님 말씀대로 고쳤더니 귀신같이 로그인이 정상 작동 되었다.
해당 Error를 만나게 되면서 PostMan을 사용하여 Back동작 확인을 한다는 것에도 한계가 있음을 느낄 수 있었다.
1일 1개념
프레임워크란?
- 프레임워크는 자주 쓰일 만한 기능들을 한데 모아 놓은 유틸(클래스)들의 모음이다.
- 애플리케이션 개발 시 필수적인 코드, 알고리즘, DB 연동과 같은 기능들을 위해 어느 정도 뼈대(구조)를 제공
- 앱/서버 등의 구동, 메모리 관리, 이벤트 루프 등의 공통된 부분은 프레임워크가 관리해줌
라이브러리
- 라이브러리 : 특정 기능을 모아둔 코드, 함수들의 집합이며 코드 작성 시 활용 가능한 도구들을 의미
프레임워크 VS 라이브러리 차이점
제어 흐름에 대한 주도성이 누구에게/어디에 있는가에 있다.
프레임워크는 전체적인 흐름을 프레임워크가 쥐고 있으며, 사용자는 그 안에서 필요한 코드를 짜 넣으면된다.
반면에 라이브러리는 사용자가 전체적인 흐름을 만들며 라이브러리를 가져다 쓰는 것이라고 할 수있다.
라이브러리는 라이브러리를 가져다가 사용하고 호출하는 측에 전적으로 주도성이 있으며
프레임워크는 그 틀안에 이미 제어 흐름에 대한 주도성이 내재(내포)하고 있다.
프레임워크는 가져다가 사용한다기보다는 거기에 들어가서 사용한다는 느낌/관점으로 접근한다.
제어의 역전이란?
어떠한 일을 하도록 만들어진 프레임워크에 제어의 권한을 넘김으로써 클라이언트 코드가 신경 써야 할 것을 줄이는 전략.
프레임워크에 정의 되어 있는 인터페이스 interface, 추상타입 abstract 을 나의 코드에서 구현, 상속 한후
프레임워크에 넘겨주는 것, 즉 객체를 프레임워크에 주입하는 것을 의존을 주입 dependency injection 한다고 말한다.
'내일배움캠프 > Today I Learned' 카테고리의 다른 글
[TIL] 나의 서른 여덟번째 회고록 (0) | 2023.01.04 |
---|---|
[TIL] 나의 서른 일곱번째 회고록 (0) | 2023.01.04 |
[TIL] 나의 서른 다섯번째 회고록 (0) | 2022.12.25 |
[TIL] 나의 서른 네번째 회고록 (0) | 2022.12.22 |
[TIL] 나의 서른 세번째 회고록 (0) | 2022.12.22 |