반응형

Spring Data JPA에서 트랜잭션 잠금 활성화

1. 개요 이 빠른 사용방법(예제)에서는 사용자 지정 쿼리 메서드 및 미리 정의된 저장소 CRUD 메서드 에 대해 Spring Data JPA에서 트랜잭션 잠금을 활성화하는 방법에 대해 설명합니다. 또한 다양한 잠금 유형과 트랜잭션 잠금 시간 초과 설정에 대해 알아봅니다. 2. 잠금 유형 JPA에는 비관적 잠금과 낙관적 잠금의 두 가지 주요 잠금 유형이 정의되어 있습니다. 2.1. 비관적 잠금 트랜잭션에서 비관적 잠금 을 사용 하고 엔터티에 액세스하면 즉시 잠깁니다 . 트랜잭션은 트랜잭션을 커밋하거나 롤백하여 잠금을 해제합니다. 2.2. 낙관적 잠금 낙관적 잠금 에서 트랜잭션은 엔터티를 즉시 잠그지 않습니다. 대신 트랜잭션은 일반적으로 할당된 버전 번호와 함께 엔티티의 상태를 저장합니다. 다른 트랜잭션에..

Spring 2022.11.14

HttpSessionListener 예제 – 모니터링

1. 개요 이 예제은 어떻게 javax.servlet.http.HttpSessionListener 를 등록하고 메트릭 을 사용하여 웹 애플리케이션의 활성 세션 수를 추적 하는지 보여줄 것 입니다. 2. 리스너 정의하기 web.xml 에 HTTP 세션 수신기를 등록할 수 있습니다 . com.baeldung.web.SessionListenerWithMetrics 또는 Servlet 3 환경 에서 @WebListener 를 사용 하여 리스너도 등록할 수 있습니다. 이 경우 @ServletComponentScan 으로 기본 SpringBootApplication 클래스 에 어노테이션을 달아야 합니다. 마지막으로 ServletListenerRegistrationBean 빈 을 선언 하여 Java 구성을 사용하여 ..

Spring 2022.11.14

Spring Security로 로그인한 후 다른 페이지로 리디렉션

1. 개요 웹 응용 프로그램에 대한 일반적인 요구 사항은 로그인 후 다양한 유형의 사용자를 다른 페이지로 리디렉션하는 것 입니다. 예를 들어 표준 사용자를 /homepage.html 페이지로 리디렉션하고 관리자 사용자를 /console.html 페이지로 리디렉션하는 것을 예로 들 수 있습니다. 이 기사에서는 Spring Security를 ​​사용하여 이 메커니즘을 빠르고 안전하게 구현하는 방법을 보여줍니다. 이 기사는 또한 프로젝트에 필요한 핵심 MVC 설정을 다루는 Spring MVC 예제 을 기반으로 작성되었습니다. 2. 스프링 Security 설정 Spring Security는 인증 성공 후 무엇을 할지 결정하는 직접적인 책임이 있는 구성 요소인 AuthenticationSuccessHandler ..

Spring 2022.11.14

스프링 소셜 트위터 설정

시리즈의 첫 번째 부분에서는 주요 질문을 검색하기 위해 StackExchange REST API 를 사용하는 초기 작업을 다룹니다. 이 두 번째 부분 에서는 Spring Social Twitter 프로젝트를 사용하여 Twitter REST API와 상호 작용하는 데 필요한 지원을 설정하는 데 중점을 둡니다. 최종 목표는 이러한 질문을 하나의 주제에 초점을 맞춘 여러 계정에서 하루에 두 번 트윗할 수 있는 것입니다. 1. 스프링 소셜 트위터 사용하기 Spring Social Twitter 프로젝트를 사용하는 데 필요한 의존성은 간단합니다. 먼저 spring-social-twitter 자체를 정의합니다. org.springframework.social spring-social-twitter 1.1.0.REL..

Spring 2022.11.14

Java 열거와 반복자의 차이점 - 2020 - 다른 사람

1. 개요 이 사용방법(예제)에서는 Java의 열거 및 반복기 에 대해 배웁니다 . 또한 코드에서 사용하는 방법과 차이점이 무엇인지 배울 것입니다. 2. 열거 및 반복자 소개 이 섹션에서는 Enumeration 및 Iterator 의 개념과 사용 에 대해 알아봅니다 . 2.1. 열거 열거 는 버전 1.0부터 Java에 있었습니다. 인터페이스이며 모든 구현 을 통해 요소에 하나씩 액세스할 수 있습니다 . 간단히 말해서 Vector 및 Hashtable 과 같은 개체 컬렉션을 반복하는 데 사용됩니다. Enumeration 의 예를 살펴보겠습니다 . Vector people = new Vector(getPersons()); Enumeration enumeration = people.elements(); whi..

Spring 2022.11.14

EnumMap 사용방법(예제)

1. 개요 EnumMap 은 Enum 을 키로 독점적으로 사용 하는 Map 구현입니다 . 이 사용방법(예제)에서는 속성, 일반적인 사용 사례 및 사용해야 하는 경우에 대해 설명합니다. 2. 프로젝트 설정 요일을 그날 하는 스포츠와 매핑해야 하는 간단한 요구 사항을 상상해 보십시오. Monday Soccer Tuesday Basketball Wednesday Hiking Thursday Karate 이를 위해 enum을 사용할 수 있습니다. public enum DayOfWeek { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } 우리가 곧 보게 될 것은 우리 Map의 핵심이 될 것입니다. 3. 창조 EnumMap 탐색을 시작하려면 먼저 ..

Spring 2022.11.14

Jenkins에서 이메일 알림 보내기

1. 개요 이 예제에서는 Jenkins 에서 이메일 알림을 보내는 두 가지 다른 방법을 볼 것 입니다. 파이프라인의 문제에 대해 즉시 알림을 받고 싶을 때 매우 유용할 수 있습니다. 2. 환경 설정 먼저 환경을 설정하겠습니다. Docker Compose 를 사용 하면 상당히 간단하게 수행할 수 있기 때문에 사용해 보겠습니다 . 이 사용방법(예제)에서는 Jenkins Docker 이미지 를 실행하는 컨테이너가 필요합니다 . 또한 MailHog 를 사용하여 이메일 전송 기능을 테스트합니다. 2.1. Docker 작성 환경을 설명하는 docker-compose.yaml 파일을 만들어 보겠습니다 . version: '3.7' services: mailhog: image: mailhog/mailhog:v1.0.1..

Spring 2022.11.14

Java에서 필터 패턴 가로채기 소개

1. 개요 이 예제에서는 Intercepting Filter Pattern 프리젠테이션 계층 Core J2EE 패턴을 소개합니다. 이것은 패턴 시리즈 의 두 번째 예제이며 여기 에서 찾을 수 있는 전면 컨트롤러 패턴 사용방법(예제) 에 대한 후속 조치 입니다. 가로채기 필터 는 들어오는 요청이 처리기에 의해 처리되기 전이나 후에 작업을 트리거하는 필터입니다. 가로채는 필터는 웹 응용 프로그램의 중앙 집중식 구성 요소를 나타내며 모든 요청에 ​​공통이며 기존 처리기에 영향을 주지 않고 확장할 수 있습니다. 2. 사용 사례 이전 사용방법(예제) 의 예제를 확장하여 인증 메커니즘, 요청 로깅 및 방문자 카운터를 구현해 보겠습니다 . 또한 다양한 인코딩 으로 페이지를 전달할 수 있기를 원합니다 . 이 모든 것은..

Spring 2022.11.14

Vavr의 패턴 매칭 사용방법(예제)

1. 개요 이 기사에서는 Vavr을 사용한 패턴 매칭에 중점을 둘 것입니다. Vavr에 대해 잘 모르는 경우 먼저 Vavr 의 개요 를 읽어보십시오 . 패턴 일치는 Java에서 기본적으로 사용할 수 없는 기능입니다. switch-case 문의 고급 형식 으로 생각할 수 있습니다. Vavr의 패턴 일치의 장점은 스위치 케이스 또는 if-then-else 문의 스택을 작성하지 않아도 된다는 것입니다. 따라서 코드의 양을 줄이고 사람이 읽을 수 있는 방식으로 조건부 논리를 나타냅니다. 다음 가져오기를 수행하여 패턴 일치 API를 사용할 수 있습니다. import static io.vavr.API.*; 2. 패턴 매칭의 작동 원리 이전 기사에서 보았듯이 패턴 일치는 스위치 블록을 대체하는 데 사용할 수 있습니다..

Spring 2022.11.14

데이터베이스 연결 없이 스프링 부트 테스트

데이터베이스 연결 없이 스프링 부트 테스트 1. 질문(문제점): 처음에는 테스트 클래스 위에 다음 어노테이션이 있었습니다. @RunWith(SpringRunner.class) @SpringBootTest(classes = Application.class) @AutoConfigureMockMvc 해당 구성을 사용하면 내 데이터베이스에 연결을 시도하는데, 내 데이터베이스가 실행되고 있지 않으면 다음 오류가 발생합니다. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The dri..

Spring 2022.11.13
반응형