Spring 17

Spring Boot > 빌드 설정 > Maven

부트 1 메이븐 3.2+ 버전을 준비한다 부트 애플리케이션 실행 pom.xml 4.0.0 learn learn-spring-boot1-maven 0.1.0 org.springframework.boot spring-boot-starter-parent 1.5.22.RELEASE 1.8 org.springframework.boot spring-boot-starter-web 이 상태에서 mvn spring-boot:run으로 스프링 부트 애플리케이션을 실행할 수 있다. 하지만 다음 에러가 발생한다 Unable to find a suitable main class, please add a 'mainClass' property 메인 클래스를 찾을 수 없다고 하니, 메인 클래스를 추가해보자 package learn;..

Spring/Spring Boot 2024.03.08

Spring Boot > 애플리케이션 실행 방법

1. 일반 자바 애플리케이션 처럼 main 메서드 실행@SpringBootApplicationpublic class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); }}2. 빌드 도구로 부트 애플리케이션 실행Maven$ mvn spring-boot:runGradle$ gradle bootRun3. Executable jar 실행$ java -jar application.jar 백그라운드로 실행$ nohup java -jar application.jar 1> /dev/null 2>&1 &4. 리눅스에서 Fully executable jar를 OS 서..

Spring/Spring Boot 2024.03.08

resillience4j

https://resilience4j.readme.io/ resilience: (충격·부상 등에서의) 회복력 한 줄 소개 A fault tolerance library for Java Modules Core modules Circuit Breaker Bulkhead Rate Limiter Retry Time Limiter Cache Circuit Breaker https://resilience4j.readme.io/docs/circuitbreaker 사전적 의미: https://namu.wiki/w/%EC%84%9C%ED%82%B7%EB%B8%8C%EB%A0%88%EC%9D%B4%EC%BB%A4 클라이언트 - 서버 A - 서버 B - 서버 C 위와 같은 연쇄적인 HTTP 호출이 있을 때, 서버 C에서 장..

Spring Data JPA > Query Methods > 메서드명 접두사

레퍼런스에 명확하게 기재하고 있지 않아서 직접 찾아보았다. find 말고도 사용 가능한 다른 접두사는? org.springframework.data.repository.query.parser.PartTree 클래스의 코드 패키지 위치를 통해 유추할 수 있듯 JPA에 국한되지 않고 Spring Data를 사용하는 모듈 하위 프로젝트에 적용될 것으로 기대된다. 어떤 것을 사용하는 게 좋을까? get 자바 빈즈의 Getter와 동일하므로 사용하지 않는다. stream 직관적이지 않음 read 보통 DB에서 검색하거나 조회한다는 건 저수준인데, 읽는다는 의미는 고수준이므로 뭔가 맞지 않는다. query RDB에서 사용하는 SQL이 Query이다보니 저수준의 의미적으론 가장 맞는다. 사용하기 나쁘지 않다. fin..

Spring/JPA 2023.12.04

Redis cache with Spring Boot

학습 환경: 스프링 부트 3.1.50. 이 문서에서 다루는 것글로벌 캐쉬스프링의 캐쉬 추상화주요 객체 소개간단한 예제1. Redis 서버 설치 및 실행애플리케이션에서 Embedded 레디스 서버를 사용할 수도 있지만 실제 데이터가 어떻게 들어가는지 눈으로 보는 것도 중요하다.2023.11.15 - [Redis] - Redis 서버 설치2. Cache Provider > Redishttps://docs.spring.io/spring-boot/docs/current/reference/html/io.html#io.caching.provider.redis3. 레디스 캐쉬를 사용하기 위한 최소한의 준비의존성 추가implementation "org.springframework.boot:spring-boot-star..

Spring/Cache 2023.11.17

Spring Cache Abstraction with Spring Boot

학습 환경: 스프링 부트 3.1.5 0. 이 문서에서 다루는 것 로컬 캐쉬 스프링의 캐쉬 추상화 주요 객체 소개 간단한 예제 1. Cache Providers 스프링은 늘 기술 구현체를 직접 제공하지 않는다. 인터페이스와 서비스 추상화를 제공할 뿐이다. 스프링이 지원하는 캐쉬 제공자: https://docs.spring.io/spring-boot/docs/current/reference/html/io.html#io.caching.provider 여기서는 로컬 캐쉬를 사용하는 몇 가지만 다뤄보겠다. Simple Generic JCache (JSR-107) 1.1 Simple https://docs.spring.io/spring-boot/docs/current/reference/html/io.html#io...

Spring/Cache 2023.11.14