본문 바로가기

study/Spring28

Spring boot AutoConfiguration 자동구성 작동 원리 이 글은 김영한님의 스프링부트 핵심원리와 활용 강의를 듣고 정리한 것입니다. 자동구성 파트 스프링부트의 핵심 기능 중 하나인 자동구성 AutoConfiguration 이것의 작동 원리를 이해하려면 2가지만 알면 된다. @Conditional @AutoConfiguration --- @Conditional 먼저 @Conditional 부터 정리해 봐야겠다 autoconfiguration 디펜던시 안을 보면 많은 것들이 자동으로 등록되게 되어있다. 그중 하나인 JdbcTemplate을 보면 @ConditionalOnMissingBean이 있다. 이것의 의미는 지정한 클래스아님 인터페이스의 빈이 없으면 어노테이션이 적용된 클래스를 빈으로 등록하겠다는 것이다. 어노테이션에 들어가보면 @Conditional 로 .. 2023. 7. 7.
Spring boot 실행 작동 원리 이 글은 김영한님의 스프링부트 핵심원리와 활용 강의를 듣고 정리한 것입니다. main을 실행하면 main에 있는 클래스와 args를 파라미터로 받는 run이라는 메서드가 실행된다. 이 메서드는 2가지 일을 하는데, 첫번째는 내장 톰캣을 실행해주고 두번째는 디스패처 서블릿 생성 및 등록하고 스프링 컨테이너를 생성 및 디스패처 서블릿에 연결한다. 그렇다면 우리가 만든 컨트롤러라던지 클래스들을 스프링 컨테이너가 어떻게 인식하고 작동하는 것일까 그건 run 메서드가 받는 파라미터와 관련이 있다. run에서 보낸 클래스는 primarySource가 되어 등록이 되는데... 그 클래스에는 main말고는 아무것도 없었는데 어떻게 된 일일까 그것은 @SpringbootApplication 어노테이션에 component.. 2023. 7. 7.
spring security in action 5-11장 --- 5장 Authentication provider는 authentication 객체 인증하고 인스턴스 반환. supports()를 통해 처리할 수 있는 유형의 auth객체인지 확인. 그러나 supports에서 true가 났어도 authenticate에서 null을 반환할 수 있음. 해당 auth provider가 처리할 수 있는 유형일지라도 처리할 수 없는 종류일수도 있기때문. 글귀 사진 --- Authentication 객체 자바 시큐리티 api의 Principal을 extends 함. 호환성 측면에서 이점이 됨. 다른 방식으로 인증을 구현했어도 스프링 시큐리티로 더 쉽게 마이그레이션 할 수 있음. --- Security Context AuthManager는 인증 프로세스를 완료한 후 Authen.. 2023. 4. 17.
spring security in action 3-4장 SpringSecurity 기본구성 authentication provider에서 일을 밑의 두개에게 위임. UserDetailsService 사용자 관리. passwordEncoder - 암호 인코딩 - 암호가 기존 코드와 일치하는지 확인 --- 3장 사용자 관리 UserDetails GrantedAuthority UserDetailsService, UserDetailsManager UserDetailsService - 사용자 검색. 필수 UserDetailsManager - 사용자 추가, 수정, 삭제 작업 UserDetailsService username으로 유저를 찾는 메서드만 존재(username이 고유하다는 전제 하) JdbcUserDetailManager LdapUserDetailManager.. 2023. 4. 13.
eureka netflix 에는 spring security RSA 가 있다. 상황 : spring security dependency import 안했는데 BcryptPasswordEncoder 가 잘 되는 상황. 알고보니 eureka netflix clint dependency에 포함되어있음. 의문 : eureka netflix client 에는 어떤 라이브러리들이 포함되어있는가? eureka netflix client dependency. spring cloud starter dependency spring security rsa import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; 2023. 2. 6.
AmigosCode small exercise in Spring Boot Full Stack with React.js 1. 파일이 이미지인지 확인하는 코드 나 나는 이게 최선이 아닌 거 같다고 생각은 했지만.. 일단 해봄. 넬슨 오.. asList 알고 있었지만 활용하는 방법들 볼 때마다 새로움ㅋㅋㅋ;; 근데 위에꺼대로 하니까 저게 String으로 안 받아지는지 원하는 대로 안돼서 저렇게 해야 했다. 아니 걍 내가 하는 방법이 더 나은 거 아녀..? 근데 이게 정석적인 그 만들어진 통용된 타입 클래스 그거 가져와서 하는 거니까 뭐.. 더 바람직한 거 같다. 2. 변수 활용 나 file을 save 할 때 버켓 이름, 파일 이름 등등의 것이 필요한데 넬슨 나는 파일이름 중복 방지하는 거 떠올리지도 못했다. 너무 오랜만에 해서..라는 핑계를 대보며 데헷 암튼 변수로 하니까 확실히 더 깨끗하고 가독성도 좋다. 근데 나는 try.. 2022. 12. 17.
728x90