랄라
[TIL 14일차]25.03.05 본문
오늘의 질문 : Spring Data JPA에서 새로운 Entity인지 판단하는 방법은 무엇일까요?
답변
새로운 엔티티라고 표현하는 방법이 있나...? 보통 내부에 존재하는 값이랑 비교를 하긴하는데.. 잘 모르겠어서 답변을 확인했다.
새로운 Entity인지 여부는 JpaEntityInformation의 isNew(T entity)에 의해 판단됩니다. 다른 설정이 없으면 JpaEntityInformation의 구현체 중 JpaMetamodelEntityInformation 클래스가 동작합니다.
@Version이 사용된 필드가 없거나 @Version이 사용된 필드가 primitive 타입이면 AbstractEntityInformation의 isNew()를 호출합니다. @Version이 사용된 필드가 wrapper class이면 null여부를 확인합니다.
is New() 라는 메소드를 호출한다고 한다.
오늘의 질문 : JPA의 ddl-auto 옵션은 각각 어떤 동작을 하고 어떤 상황에서 사용해야 할까요?
답변
ddl 은 정의어고 auto 가 붙은건, sql문과 동작할때 자동적으로 값을 추가 삭제 수정로직을 진행하는게 아닐까?
다양한 값에 따라 데이터베이스 스키마에 대해 다른 동작을 수행합니다. ddl-auto 옵션에는 none(수동조작), validate(검증확인용), update(엔티티와 스키마를 비교하여 필요한경우 스키마 업데이트), create(삭제후 새로생성), create-drop(애플리케이션 종료시 삭제) 등이 존재
스키마는 데이터베이스 구조를 정의하고, 설계하는 개념이다.
코드카타 (탐욕법)
https://school.programmers.co.kr/learn/courses/30/lessons/42885
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
import java.util.*;
class Solution {
public int solution(int[] people, int limit) {
Arrays.sort(people);
int answer = 0;
int left = 0;
int right = people.length - 1;
while (left <= right) {
if (people[left] + people[right] <= limit) {
left++;
}
right--;
answer++;
}
return answer;
}
}
'내일배움캠프 > TIL' 카테고리의 다른 글
| [TIL 16일차]25.03.07 (0) | 2025.03.07 |
|---|---|
| [TIL 15일차]25.03.06 (0) | 2025.03.07 |
| [TIL 13일차]25.03.04 (0) | 2025.03.04 |
| [TIL 12일차] 25.02.27 (0) | 2025.02.27 |
| [TIL 11일차] 25.02.26 (0) | 2025.02.27 |