반응형

@javax.validation.Valid를 사용할 때 적절한 방식으로 사용자 정의 예외를 발생시키는 방법은 무엇입니까? 물어보다

@javax.validation.Valid를 사용할 때 적절한 방식으로 사용자 정의 예외를 발생시키는 방법은 무엇입니까? 물어보다 1. 질문(문제점): 사용할 때 적절한 방식으로 사용자 지정 예외를 throw하는 방법은 @javax.validation.Valid무엇입니까? @Valid컨트롤러에서 사용 하고 있으며 @AssertTrue요청 본문 필드의 유효성을 검사합니다. public ResponseEntity createFoo( @Valid @RequestBody Foo FooRequest ... @AssertTrue() public boolean isFooValid() { if (invalid) return false; ... } 그러나 어떤 조건에서 사용자 정의 Exception 클래스를 던지고 싶습..

Spring 2022.11.03

JOOQ를 사용한 Spring Boot와 Spring Data JPA의 기술적 차이점 물어보다

JOOQ를 사용한 Spring Boot와 Spring Data JPA의 기술적 차이점 물어보다 1. 질문(문제점): JOOQ와 함께 Spring Boot를 통해 Spring Data JPA를 언제 사용하고 그 반대의 경우도 마찬가지입니까? Spring Data JPA는 기본 CRUD 쿼리를 완료하는 데 사용할 수 있지만 JOOQ를 사용하면 더 쉽게 만드는 동안 복잡한 조인 쿼리에는 실제로 사용할 수 없다는 것을 알고 있습니까? 편집: jooq와 함께 Spring 데이터 jpa를 모두 사용할 수 있습니까? 2. 해결방안: 귀하의 질문에 쉬운 대답은 없습니다. 나는 그 주제에 대해 몇 가지 연설을 했습니다. 때로는 프로젝트에 둘 다 있어야 하는 합당한 이유가 있습니다. 편집: 방언 및 데이터 유형과 관련하여..

Spring 2022.11.03

Java에서 문자열을 char로 변환

1. 개요 String 은 일반적인 유형이고 char 은Java 에서 기본 유형입니다. 이 사용방법(예제)에서는 Java에서 String 개체를 char 로 변환하는 방법을 살펴봅니다 . 2. 문제 소개 char 에는 하나 의 단일 문자만 포함될 수 있다는 것을 알고 있습니다 . 그러나 String 개체는 여러 문자를 포함할 수 있습니다. 따라서 예제에서는 두 가지 경우를 다룹니다. 소스는 단일 문자 문자열입니다. 소스는 다중 문자 문자열입니다. 사례 1의 경우 단일 문자를 char 로 쉽게 얻을 수 있습니다. 예를 들어 이것이 우리의 입력이라고 가정해 보겠습니다. String STRING_b = "b"; 변환 후 char ' b '가 있을 것으로 예상합니다. 사례 2의 경우 소스 문자열 이 다중 문자 ..

Spring 2022.11.02

자바에서 제네릭으로 팩토리 패턴 구현하기

1. 개요 이 예제에서는 Java에서 제네릭을 사용하여 팩토리 패턴을 구현하는 방법을 배웁니다. 2. 팩토리 패턴이란? 객체 지향 프로그래밍에서 팩토리 패턴은 호출될 때 객체 생성을 담당 하는 생성 디자인 패턴 입니다. 팩토리는 메소드 호출에서 프로토타입 클래스(일명 인터페이스)의 객체를 생성하는 클래스입니다. 팩토리 패턴은 사용자에게 생성 로직을 숨기면서 공통 인터페이스의 객체를 생성하고자 할 때 좋습니다. 3. 어떻게 구현합니까? 이제 구현하는 방법을 알아보겠습니다. 먼저 클래스 다이어그램을 살펴보겠습니다. 이제 다이어그램에서 각 클래스를 구현해 보겠습니다. 3.1. 알리미 인터페이스 구현 Notifier 인터페이스 는 프로토타입이며 다른 알림 클래스가 이를 구현합니다. public interface..

Spring 2022.11.02

Mockito @Mock, @Spy, @Captor 및 @InjectMocks 시작하기

1. 개요 이 예제에서는 Mockito 라이브러리의 @Mock , @Spy , @Captor 및 @InjectMocks 어노테이션을 다룹니다 . 더 많은 Mockito 장점을 보려면 여기에서 시리즈를 살펴보십시오 . 2. Mockito 어노테이션 활성화 더 진행하기 전에 Mockito 테스트에서 어노테이션을 사용할 수 있는 다양한 방법을 살펴보겠습니다. 2.1. MockitoJUnitRunner 첫 번째 옵션은 MockitoJUnitRunner 로 JUnit 테스트에 어노테이션 을 추가하는 것입니다 . @RunWith(MockitoJUnitRunner.class) public class MockitoAnnotationTest { ... } 2.2. MockitoAnnotations.openMocks() ..

Spring 2022.11.02

자바 제네릭의 기초

1. 개요 JDK 5.0은 버그를 줄이고 유형에 대한 추상화 계층을 추가하기 위해 Java Generics를 도입했습니다. 이 예제은 Generics in Java, 그 이면의 목표 및 코드 품질을 향상시키는 방법에 대한 간략한 소개입니다. 2. 제네릭의 필요성 Integer 를 저장할 Java List을 생성하려는 시나리오를 상상해 봅시다 . 다음을 작성하려고 할 수 있습니다. List list = new LinkedList(); list.add(new Integer(1)); Integer i = list.iterator().next(); 놀랍게도 컴파일러는 마지막 줄에 대해 불평합니다. 어떤 데이터 유형이 반환되는지 모릅니다. 컴파일러는 명시적 캐스팅이 필요합니다. Integer i = (Intege..

Spring 2022.11.02

캐싱을 위한 TTL(Time-To-Live) 값 설정

1. 개요 이 사용방법(예제)에서는 몇 가지 기본적인 실제 예제에 대해 캐싱을 수행합니다. 특히, 이 캐싱 메커니즘을 시간 제한적으로 구성하는 방법을 시연할 것입니다. 또한 캐시에 대한 TTL(Time-to-Live)과 같은 시간 제한을 참조합니다. 2. 스프링 캐싱을 위한 설정 이전에 Spring에서 @Cacheable 어노테이션을 사용하는 방법을 시연 했습니다. 한편, 캐싱의 실제 사용 사례는 호텔 예약 웹사이트의 메인 페이지가 자주 열리는 경우입니다. 이는 호텔 List을 제공하기 위한 REST 엔드포인트 가 자주 요청되어 데이터베이스를 자주 호출한다는 것을 의미합니다. 데이터베이스 호출은 메모리에서 직접 데이터를 제공하는 것에 비해 느립니다. 먼저 SpringCachingConfig 를 생성합니다..

Spring 2022.11.02

MySQL 및 Spring Boot 애플리케이션의 TLS 설정

1. 개요 MySQL 서버와 클라이언트 간의 암호화되지 않은 연결은 네트워크를 통해 전송 중인 데이터를 노출할 수 있습니다. 프로덕션 준비 애플리케이션의 경우 모든 통신을 TLS(전송 계층 Security) 프로토콜을 통한 Security 연결로 이동해야 합니다. 이 사용방법(예제)에서는 MySQL 서버에서 Security 연결을 활성화하는 방법을 배웁니다. 또한 이 Security 연결을 사용하도록 Spring Boot 애플리케이션을 구성합니다. 2. MySQL에서 TLS를 사용하는 이유는 무엇입니까? 먼저 TLS의 몇 가지 기본 사항을 이해하겠습니다. TLS 프로토콜 은 암호화 알고리즘을 사용하여 네트워크를 통해 수신된 데이터를 신뢰할 수 있고 변조되거나 검사되지 않도록 합니다. 데이터 변경, 손실 ..

Spring 2022.11.02

스트리밍 플랫폼의 메시지 전달 의미 체계

1. 개요 이 사용방법(예제)에서는 스트리밍 플랫폼의 메시지 전달 의미 체계에 대해 설명합니다. 먼저 스트리밍 플랫폼의 주요 구성 요소를 통한 이벤트 흐름을 빠르게 살펴보겠습니다. 다음으로 이러한 플랫폼에서 데이터 손실 및 복제에 대한 일반적인 이유에 대해 설명합니다. 그런 다음 사용 가능한 세 가지 주요 전달 의미에 중점을 둘 것입니다. 스트리밍 플랫폼에서 이러한 의미 체계를 달성하는 방법과 데이터 손실 및 중복 문제를 처리하는 방법에 대해 논의할 것입니다. 각각의 전달 의미론에서 우리는 Apache Kafka에서 전달 보장을 얻는 방법을 아주 간략하게 다룰 것입니다. 2. 스트리밍 플랫폼의 기본 간단히 말해서 Apache Kafka 및 Apache ActiveMQ 와 같은 스트리밍 플랫폼 은 하나 이..

Spring 2022.11.02

문자열을 문자열 배열로 변환

1. 개요 String 은 아마도 Java에서 가장 일반적으로 사용되는 유형 중 하나일 것입니다. 이 사용방법(예제)에서는 문자열을 문자열 배열( String[] )로 변환 하는 방법 을 살펴 봅니다 . 2. 문제 소개 문자열을 string형 배열로 변환하는 데는 두 가지 시나리오가 있을 수 있습니다. 문자열을 싱글톤 배열(단 하나의 요소만 포함하는 배열)으로 변환 특정 규칙에 따라 문자열을 배열의 요소로 나누기 사례 1은 비교적 이해하기 쉽습니다. 예를 들어 "baeldung" 문자열이 있는 경우 이를 String[]{ "baeldung" } 로 변환하려고 합니다 . 즉, 변환된 배열에는 입력 문자열 자체인 하나의 요소만 있습니다 . 사례 2의 경우 입력 문자열을 조각으로 나눌 필요가 있습니다. 그러나..

Spring 2022.11.02
반응형