Web

    [간단 정리] Spring Data Redis

    배경 회사에서 내가 운영하고 있는 애플리케이션 중에는 별도의 Redis 서버를 이용하여 로그인 기능을 제공하고 있는데, Spring Data에서 제공하는 Redis도 있다. 추후 쓸일이 있을 듯하여 어떤 차이가 있는지 어떤 용도로 사용될 수 있는지 간략히 알아보았다. Spring Data Redis Spring Data 의 일부로, Spring application 을 이용해 Redis의 손쉬운 설정 및 접근을 제공한다. 그리하여 사용자가 인프라 걱정으로부터 자유로울 수 있게 해준다. 임베디드 레디스 서버 일반적으로 실제 DB로써의 역할로써 사용하는 것보다는 별도의 저장소가 존재하고 이를 캐싱하여 성능을 향상시키는 역할로써 사용되는 듯하다. 의존성 spring-boot-starter-cache, spri..

    [Spring Batch] 1. 스프링 배치 공부 순서와 간단 소개

    [Spring Batch] 1. 스프링 배치 공부 순서와 간단 소개

    기록 순서 1. 스프링 배치 소개 (탄생 배경, 적용 가능한 task, 아키텍처) 현재 글 2. 스프링 배치 시작 (스프링 배치 플젝 + 의존성 구성, 간단한 실습_job 구성+실행) 3. 스프링 배치 도메인 이해 (job, step, 등 각 도메인에 대한 이해_특징,기능,정의) 🌟🌟🌟 4. 스프링 배치 실행 (완성된 job 실행, 도메인 간 상호관계 및 흐름 파악) 체계적&유연한 배치 모델 구성 4. 아키텍처 Application 스프링 배치 프레임웍을 통해 개발자가 만든 배치 Job과 커스텀 코드 포함되어 있다. Batch Core Job을 실행, 모니터링, 관리하는 API로 구성 JobLauncher, Job, Step, Flow 등 Batch Infrastructure Application, Ba..

    Spring Framework와 Spring Boot의 차이

    이번 포스팅에서는 Spring Framework와 Spring Boot의 차이에 대해 알아보겠습니다. 💡 Spring Framework가 뭐야? Spring Framework는 자바 플랫폼을 위한 오픈소스로 공개된 애플리케이션 프레임워크입니다. 동적인 웹 사이트를 개발하는데 필요한 여러 가지 서비스를 제공하는데 그중 특징적인 것 3가지만 정리하겠습니다. 1. 제어의 역전 (IoC, Inversion of Control) 일반적으로 개발자가 필요한 객체를 생성하고 해제하는 등 관리하는 방법이 아닌, 객체를 선언해놓기만 하면 (애노테이션을 이용하면 간단하게 가능합니다) 스프링 컨테이너가 자동으로 객체를 생성해주고 객체의 라이프 사이클을 관리해줍니다. 쉽게 말하면, 제어권이 개발자에게 있는게 아닌, 스프링 컨..

    @Component에 대해 (@Bean)

    @Component에 대해 (@Bean)

    Spring 으로 개발을 할 때 @Bean과 @Component의 차이를 명확하게 알고 사용한 게 아니었다는 걸 알고 정리를 하고자 오랜만에 글을 작성합니다. 먼저 @Bean과 @Component의 차이를 다루고, @Component에 대한 Spring 공식문서를 읽으며 정리하고 마무리하겠습니다. 두 애노테이션 모두 Spring Context에 해당 객체를 빈(Bean)으로 등록하기 위해 사용한다는 점은 공통점입니다. 차이점은 1. 용도와 2. 제한이 있습니다. 1. 용도 개발자가 통제하지 못하는 외부 라이브러리를 가지고 와서 빈으로 등록하려고 할 때, @Bean을 사용할 수 있습니다. 반면, 개발자가 직접 구현한 클래스를 빈으로 등록하려 할 때, 보통 @Component를 붙입니다. 결국, 둘다 스프링..

    @RequestBody 붙였어??

    @RequestBody 붙였어??

    준비 해당 포스팅의 제목이 이렇게 붙여진 이유는... 내가 그런 실수를 저질렀기 때문이다. ㅠㅠ 그래서 나의 바보짓을 공개적인 곳에 올리면서 제대로 기억할 겸 포스팅한다. @RequestBody 애노테이션은 한마디로 HttpRequestBody를 Java객체로 매핑해주는 애노테이션이다. 덕분에 API 요청으로 전송받은 JSON 데이터를 (우리가 따로 조작하지 않고도) 객체로 변환해서 받을 수 있게 된다. '@RequestBody'가 뭐지? 애노테이션 이름이 말해주는 그대로, 요청(Request)의 Body를 연결해주는 역할을 한다. 웹 요청의 body에는 json 형태로 데이터가 전달되는데, 컨트롤러 메서드의 매개변수 앞에 애노테이션 @RequestBody를 붙이면 해당 객체가 웹 요청의 body와 매핑..

    Web Server와 Web Application Server(WAS)

    Web Server와 Web Application Server(WAS)

    여기서 말하는 "Server"는 소프트웨어적인 관점에서 이야기합니다. 참고 Web Server와 Web Application Server는 헷갈리기 쉬운 개념인 것 같습니다. 이번 글에서는 각각의 역할과 왜 웹 서비스 개발 시 함께 사용하는지에 대해 이야기하겠습니다. 완벽히 이해하기 위한 과정 중 작성하는 것이므로 잘못된 부분은 일러주시면 감사하겠습니다. 목차 Web Server와 WAS 간단한 설명과 두드러지는 차이점 Web Server의 역할 Web Application Server의 역할 Apache와 NginX (WS) 정리 Web Server와 WAS(Web Application Server) 우선, Web Server는 무엇일까요? Web을 위한 Server입니다. Server는 소프트웨어적 ..