Spring이란? 스프링(Spring)은 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 SpringBoot - 스프링 부트는 웹 프로그램을 쉽고 빠르게 만들 수 있도록 도와주는 웹 프레임워크 Spring Cloud - 분산/버전 관리, 서비스 등록 및 검색 가능, 라우팅, 서비스 간 호출, 부하분산, 회로차단기, 분산 메시지 등의 기능을 사용할 수 있는 도구 Spring Batch - 엔터프라이즈 시스템의 일상적인 운영에 필수적인 강력한 배치 애플리케이션을 개발할 수 있도록 설계된 가볍고 포괄적인 배치 프레임워크 Spring 특징 컨테이너 역할 Spring 컨테이너는 Java 객체의 LifeCycle을 관리하며, Spring 컨테이너로부터 필요한 객체를 가져와 사용할 수 ..
ELK Stack이란? ElasticSearch를 처음 알게 된 건 7~8년 전쯤 세미나에서 알게 되었습니다. 검색엔진 정도로만 알고 당시에는 자료를 찾기 어려워 깊이 있게 알지 못하였었는데요. 지금부터 자세히 알아가 보도록 하겠습니다. ELK Stack은 Elasticsearch, Logstash, Kibana의 세 가지 프로젝트로 구성된 Stack을 의미하는 약어입니다. 사용자에게 모든 시스템과 애플리케이션에서 로그를 집계하고 이를 분석하며 애플리케이션과 인프라 모니터링 시각화를 생성하고, 빠르게 문제를 해결하며 보안 분석할 수 있는 능력을 제공합니다. Elasticsearch는 Apache Lucene에 구축되어 배포된 검색 및 분석 엔진입니다. 고성능에 다양한 언어를 지원하고 스키마가 없는 JSO..
JUnit5 란? JUnit이란 자바 프로그래밍 언어용 단위 테스트 프레임워크입니다. SpringBoot 2.2.0 이전에는 JUnit4가 기본으로 설정되었지만, SpringBoot 2.2.0 버전부터는 JUnit5가 기본으로 설정됩니다. JUnit5는 런타임 시 Java8 이상이 필요하며, Junit5를 사용하려면 Gradle 4.7 이상이 여야 합니다. JUnit의 경우 Spring boot initializer에서 Spring-Web을 dependencies를 사용하게 되면 자동적으로 추가가 됩니다. JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage JUnit Platform : 테스트를 발견하고 테스트 계획을 생성하는 Test Engine API..
JPA 적용하기 JDBC, MyBatis에 이어서 이번엔 JPA 연결해서 사용해 보겠습니다. build.gradle //JPA implementation 'org.springframework.boot:spring-boot-starter-data-jpa' MovieVO.java package com.api.opendata.model.boxoffice; import lombok.Getter; import lombok.Setter; import javax.persistence.*; @Getter @Setter @Entity @Table(name="tbl_Movie") public class MovieVO { @Id @Column //@GeneratedValue(strategy= GenerationType.ID..