728x90
반응형

JAVA/SPRING 51

[SPRING] @NoArgsConstructor(force = true)옵션

문제: 상황 final필드가 있는 경우final필드는 선언될 때 한 번만 값을 올릴 수 있습니다. 그래서 기본적으로 문제 생성( @NoArgsConstructor)을 사용할 때가 발생합니다. final필드가 있는 클래스에 기본적으로 생성자를 추가하려고 하면, 생성자에서 final필드를 외부로 내보내려는 경우가 발생합니다. 참조 유형 필드 (String,Object등): null로기본타입 필드 (int, boolean, double등): 0, false 로 초기화 import lombok.NoArgsConstructor;@NoArgsConstructor(force = true)public class Example { private final String name; // 강제로 null로 초기화 ..

JAVA/SPRING 2024.09.25

[SPRING] @NoArgsConstructor

목적 : 파라미터가 없는 기본 생성자 를 자동으로 생성합니다.군의 필드 생성과 성공 없이도 군사력이 없는 생성자 를 추가합니다.주의 사항( final필드) : final필드가 있는 경우 기본적으로 생성된 필드의 임시 필드가 필요하기 때문에 발생할 수 있습니다. @NoArgsConstructor(force = true)​ final​하지만 이 경우 final필드는 추측으로 설정됩니다( null, 0, false 등).import lombok.NoArgsConstructor;@NoArgsConstructorpublic class Example { private final String name; // 기본 생성자에서 초기화되지 않으면 에러 발생 private int age;} 위 코드는 다음과 ..

JAVA/SPRING 2024.09.24

[SPRING] @Value

@Value는 Spring Framework에서 자주 사용되는 어노테이션으로,주로 Spring의 DI(Dependency 주입) 기능을 통해 외부 설정 값을 클래스 필드에 연결할 수 있을 때 사용됩니다.주로 application.properties 또는 application.yml 과 같은 설정 파일에서 값을 가져오는 데 활용됩니다.@Value("${property.key}")private String value;여기서는 property.key설정 파일에 정의된 속성의 키입니다.해당 키에 매핑된 값을 value적용해야 합니다. app.name=MyAppapp.version=1.0.0@Componentpublic class AppConfig { @Value("${app.name}") pr..

JAVA/SPRING 2024.09.19

[SPRING] fixedDelay

fixedDelay는 Spring의 @Scheduled 어노테이션에서 사용하는 속성 중 하나로, 작업이 완료된 후 일정 시간(딜레이)이 지나면 다시 실행되는 방식의 스케줄링을 설정하는 데 사용됩니다.fixedDelay 동작 방식:이전 작업이 완료된 시간으로부터 지정된 시간만큼 대기한 후에 작업을 다시 실행합니다.딜레이 시간은 밀리초 단위로 설정됩니다. 예를 들어, fixedDelay = 1000 * 30은 30초(30,000밀리초)의 딜레이를 의미합니다.주요 특징:작업이 완료된 후 딜레이 시간을 기준으로 다음 작업을 실행하므로, 이전 작업이 끝나기 전에 새 작업이 시작되지 않습니다.작업 시간이 불규칙하거나 길어질 수 있는 상황에서 사용하기 좋습니다.import org.springframework.sche..

JAVA/SPRING 2024.09.17

[Spring] Stringtils equals/ equalsAny/ equalsIgnoreCase/ equalsAnyIgnoreCase

1.equals설명: 두 문자열이 동일한지 비교합니다.구현: null 처리를 포함하며, 두 문자열이 모두 null이면 true를 반환합니다. 하나만 null이면 false를 반환합니다.대소문자 구분: 구분함.StringUtils.equals("abc", "abc"); // trueStringUtils.equals("abc", "ABC"); // falseStringUtils.equals(null, "abc"); // falseStringUtils.equals(null, null); // true 2.equalsAny설명: 첫 번째 문자열이 나머지 인수 문자열 중 하나와 동일한지 확인합니다.구현: 첫 번째 문자열이 null일 경우, 나머지 문자열들 중 하나라도 null이면 true를 반환합니다.대소문..

JAVA/SPRING 2024.09.03

[Spring] RestTemplate을 사용하여 JSON 배열을 List객체로 매핑

RestTemplate을 사용하여 JSON 배열을 List 타입의 객체로 매핑하는 방법 1. DTO 클래스 정의먼저, JSON 응답을 매핑할 DTO(Data Transfer Object) 클래스를 정의합니다.API가 다음과 같은 JSON 배열을 반환한다고 가정합니다:[ { "userId": 1, "userName": "John Doe", "email": "johndoe@example.com" }, { "userId": 2, "userName": "Jane Smith", "email": "janesmith@example.com" }]이 JSON 구조에 맞춰 ResYhIftkUserApiListDTO 클래스를 정..

JAVA/SPRING 2024.08.30

[Spring] RestTemplate

RestTemplate은 Spring Framework에서 제공하는 클래스로, RESTful 웹 서비스와의 HTTP 통신을 간편하게 수행할 수 있도록 도와줍니다. RestTemplate을 사용하면 HTTP 요청을 쉽게 만들고, 응답을 다양한 형태로 받을 수 있습니다. 이는 클라이언트 애플리케이션에서 외부 API와 상호작용할 때 매우 유용합니다.주요 기능RestTemplate은 다음과 같은 HTTP 요청을 지원합니다:GET 요청: 리소스를 가져오기 위해 사용합니다.POST 요청: 데이터를 서버에 보내기 위해 사용합니다.PUT 요청: 리소스를 업데이트하기 위해 사용합니다.DELETE 요청: 리소스를 삭제하기 위해 사용합니다.기본 사용법아래는 RestTemplate을 사용하여 외부 API에 GET 요청을 보내..

JAVA/SPRING 2024.08.29
728x90
반응형