스프링이란 자바로 애플리케이션을 개발하는 데 필요한 기능을 제공하고 쉽게 사용하도록 돕는 도구 입니다.
스프링 프레임워크와 스프링 부트의 차이점에 대해서 보려고 합니다.
스프링부트에서 spring-boot-starter-web 모듈을 사용하면 기본적으로 톰캣을 사용하는 스프링 MVC구조를 기반으로 동작합니다.
스프링 시큐리티를 활용하기 위해서는 먼저 보안과 관련된 용어를 알아주는 것이 중요합니다.
스프링 시큐리트를 이용한 api를 만들던 중 WebSecurityConfigurerAdapter를 상속받아 사용하던 중 문제 발생
Spring은 공통적으로 여러 작업을 처리함으로써 중복된 코드를 제거할 수 있도록 많은 기능을 제공해주고 있습니다. 그 중에서 필터와 인터셉터의 차이에 대해서 알아보려고 합니다.
Spring 내부에서는 인터셉터외에도 AOP(관점 지향 프로그래밍)가 있습니다.
우리가 작성한 코드나 비즈니스 로직 자체를 테스트하기 위해 작성한 코드를 의미합니다.
Spring Security (2)
JPA란 자바 ORM(Object Relational Mapping) 기술에 대한 API 표준 명세를 의미합니다.
컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것입니다.
클린코드로 유명한 로버트 마틴이 정리한 좋은 객체 지향 설계의 5가지 원칙
Spring에서 앱을 실행시키게 되면 Component Scan을 통해 @Controller, @Service, @Repository등을 찾아서 자동으로 의존관계에 대해서 설정을 해주게 됩니다.
개발을 진행할 때 고민해야할 점입니다.
SRP,DIP,OCP를 이용해서 좋은 객체 지향 설계를 알아보도록 하겠습니다.
스프링 컨테이너의 최상위 인터페이스로 스프링 빈을 관리하고 조회하는 역할을 담당합니다.
스프링 컨테이너는 다양한 형식의 설정 정보를 받아드릴 수 있게 유연하게 설계되어 있습니다. 위 그림처럼 xml, 자바 코드 Groovy 등등을 이용해서 설정을 할 수 있습니다.