개발&TIL/스프링(8)
-
스프링부트 - #7 batch
스프링 배치는 백엔드의 배치 처리 기능을 구현하는 데 사용하는 프레임위크 배치(batch)는 프로그램의 흐름에 따라 순차적으로 자료를 처리를 말함, 일괄 처리와 같은 말 스프링 부트 배치를 써야 하는 이유 대용량 데이터 처리에 최적화되어 고성능을 발휘 효과적인 로깅, 통계 처리, 트랜잭션 관리 등 재사용 가능한 필수 기능을 지원 수동으로 처리하지 않도록 자동화 되어 있음 예외사항과 비정상 동작에 대한 방어 기능 스프링 부트 배치의 반복되는 작업 프로세스를 이해하면 비즈니스 로직에 집중 가능 스프링 부트 배치 2.0은 스프링 배치 4.0 기반 자바 8 이상에서 동작, 함수형 인터페이스와 람다를 지원 스프링 프레임워크 5로 진화하면서 새롭게 재배열된 의존성 트리 지원 ItemReaders, ItemProce..
2020.11.17 -
스프링부트 - #6 REST
REST(Representational State Transfer)는 웹의 장점을 극대화 하는 통신 네트워크 아키텍처이며, REST의 구현 원칙을 제대로 지키는 시스템을 RESTful이라고 함 HTTP와 URL의 단순하고 간결한 장점을 계승한 네트워크 아키텍처 RESTful 제약조건 클라이언트-서버 : 관심사의 명확한 분리 무상태성 : 서버에 클라이언트의 상태 정보를 저장하지 않음 캐시 가능: 클라이언트이 응답을 캐시 계층화 시스템 : 중개 서버나 로드 밸런싱, 공유 캐시 등의 기능을 사용하여 확장성이 있는 시스템 구성 가능 코드 온 디멘드 : 클라이언트는 서버에서 자바 애플릿, 자바스크립트 실행 코드를 전송받아 기능을 확장가능, 선택적 제약 인터페이스 일관성 - URI로 지정된 리소스에 균일하고 통일된..
2020.11.17 -
스프링부트 - #5 oAuth2
인증과 권한에 관련된 강력한 기능인 스프링 부트 시큐리티를 제공 스프링 부트 시큐리티는 스프링 시큐리티의 번거로운 설정을 간소화 시켜주는 래핑 프레임워크 가장 중요한 개념은 '인증(authentication)'과 '권한 부여(authorization)' 인증 : 사용자(클라이언트)가 애플리케이션의 특정 동작에 관하여 허락(인증)된 사용자인지 확인하는 절차 권한 부여 : 데이터나 프로그램 드의 특정 자원이나 서비스에 접근할 수 있는 권한 허용 인증방식 크리덴셜 기반 인증 방식 : 사용자명과 비밀번호로 인증 이중 인증 방식 : OTP와 같은 추가적인 인증 방식을 도입해 한번에 2가지 방법으로 인증하는 인증 방식 OAuth2 인증 방식 : 소셜 미디어를 사용해 편리하게 인증하는 방..
2020.11.17 -
스프링부트 - #4 web
thymeleaf는 웹 또는 독립적인 실행 환경에서 사용되는 자버 서버 사이드 템플릿 엔진 프로젝트 의존성 구성을 위해 build.gradle을 설정하여 버전 및 의존성을 설정함 Spring-Boot-Community-Web 구조 ├── README.md ├── build ├── build.gradle ├── gradle └── src ├── main │ ├── java │ │ └─── com │ │ └── web │ │ ├── config │ │ ├── controller │ │ ├── domain │ │ ├── repository │ │ └── service │ └── resources │ │ ├── css │ │ ├── images │ │ └── js │ └── templates │ └── boar..
2020.11.17 -
스프링부트 - #3 테스트
스프링 부트에서는 기본적인 테스트 스타터를 제공 크게 두가지 모듈로 구성 spring-boot-test, spring-boot-test-autoconfigure이며 테스트 관련 자동 설정 기능을 제공 보통은 spring-boot-starter-test로 두 모듈을 함께 사용 테스트 코드 및 예제는 설명 X @SpringBootTest 통합 테스트를 제공하는 기본적인 스프링 부트 테스트 어노테이션 실제 구동되는 애플리케이션과 똑같은 컨텍스트를 로드하여 테스트 @RunWith 어노테이션을 사용하면 JUnit에 내장된 러너를 사용하는 대신 어노테이션에 정의된 러너 클래스 사용 @SpringBootTest 를 사용하려면 JUnit 실행에 필요한 Springjunit4ClassRunner 클래스를 상속받은 @Ru..
2020.11.17