728x90 320x100 💻 하나씩 차곡차곡363 인텔리제이(IntelliJ)에서 롬복(Lombok) 활성화 하는 방법 1. 디펜던시(dependencies)에 Lombok 추가build.gradledependencies { annotationProcessor 'org.projectlombok:lombok'} 2. Lombok 설치[Settings] - [Plugins] - [Lombok] install 3. Lombok 기능 활성화 [Settings] - [Annotation Processors] - [Enable annotation processing] 체크 2025. 4. 4. MySQL에서 어떨 때 VARCHAR, TEXT를 써야 하나요? ✅ VARCHAR vs TEXT의 차이항목VARCHAR(n)TEXT목적짧은 가변 길이 문자열긴 문자열 (대량 텍스트)길이 제한최대 65,535 바이트 (InnoDB는 일반적으로 65535 중 일부만 사용 가능)최대 65,535 바이트 (하지만 실제 저장 방식이 다름, 로우 외부)인덱스가능 (부분/전체 인덱싱 가능)기본적으로 인덱스 불가 (부분 인덱싱은 수동 설정 필요)성능더 빠르고 효율적 (메모리 상에 저장)느릴 수 있음 (별도 공간에 저장됨)NULL 허용 여부가능가능그러나,VARCHAR(n)은 n 바이트 제한이 아니라 문자 수 제한 (UTF-8이면 최대 n×3 바이트)TEXT는 기본적으로 최대 65,535 바이트까지 저장 가능하되, 문자 수 제한은 없음VARCHAR도 전체 row가 65,535 바이트 .. 2025. 4. 3. 데이터베이스 생성시 Charset은 뭘로 해야 하나요? 데이터베이스를 처음 생성할 때 Chartset, Collation은 뭘로 지정해줘야 하나요? 일반적인 웹/앱 서비스용 MySQL 를 사용한다는 전재 하에 utf8mb4 을 사용할 것을 추천함.이유: utf8mb4는 이모지(😊) 포함 모든 유니코드 문자를 저장이 가능함.반면, utf8은 3바이트까지만 저장해서 일부 문자(예: 이모지, 일부 한자)는 깨질 수 있음.🚫 피해야 할 것:atin1, euckr, utf8 등은 옛날 시스템에서나 사용. 글로벌 서비스에는 부적합.collation은요?utf8mb4_general_ci: 속도 우선, 대소문자 구분 Xutf8mb4_unicode_ci: 정확도 우선, 다국어 정렬 고려 (요즘은 이것도 많이 씀)utf8mb4_0900_ai_ci: MySQL 8.0 이상이.. 2025. 4. 3. [Java] 배열 (Array) / 리스트 (List) 정리 배열크기 고정, 같은 타입만 저장 선언 & 초기화int[] arr = new int[5]; // 크기 5짜리 배열int[] arr2 = {1, 2, 3}; // 값으로 초기화 요소 접근arr[0] = 10;int x = arr[2];요소 추가/삭제 불가 크기 확인arr.length; 반복문for (int i = 0; i 최소/최대값 찾기int max = arr[0];for (int n : arr) if (n > max) max = n; 출력System.out.println(Arrays.toString(arr)); 리스트 (List)보통 ArrayList 사용크기 유동적, 요소 추가/삭제 편함import 필요: import java.util.*; 선언 & 초기화List list = new ArrayLis.. 2025. 3. 28. "나도 드디어...성능 최적화를...?" - 대용량 INSERT 성능 개선: SQL Session 배치 처리로 최적화하기 [서론]2025년 1월, 새해가 되니 내가 담당자?!작년에 클라이언트가 개선사항을 요청했고 현재 '운영중'이니 내년에 개선하겠다고 약속을 했으며, 그 약속을 했던 전임자는 떠나갔다. 그럼 개선은...? 올해 담당자인 내가 해야 한다. 그래서 써보는 개선 일지. [요청사항]"1,000건 이상 엑셀 업로드를 할 때 자꾸 에러가 떠요! 1000건 이상 업로드 되게끔 해주세요!" [문제상황 및 원인][상황] 대량 데이터 DB INSERT 시 성능 저하 및 오류 발생 (ORA-01653 등)[원인] 기존에는 개별 INSERT 문을 실행했으며, 1건씩 처리했기 때문에 성능 저하와 에러가 발생함.[상황] API 통신을 위한 데이터 변환시 속도 저하 발생 (1,500건 2분 가량 소요)[원인] 그리드 데이터를 가공.. 2025. 2. 7. [Java] IllegalArgumentException VS IllegalStateException : 어떨 때 뭘 써야 하지? 개발할 때 IllegalArgumentException과 IllegalStateException를 자연스럽게 많이 쓰는 경우를 봤는데 어떨 때 어떤 걸 써야 할지 알아두고 싶어서 정리! 1. IllegalArgumentException목적 : 메서드에 전달된 인자가 잘못되었을 때 사용상황값의 유효성 검사 실패 : 인자가 범위를 벗어나거나 형식이 잘못된 경우.값이 특정 제약 조건을 만족하지 않는 경우 (ex.null 값 전달 금지)사용 예시: public void setAge(int age) { if (age 150) { throw new IllegalArgumentException("Age must be between 0 and 150."); } this.age = age.. 2025. 1. 17. 이전 1 2 3 4 ··· 61 다음 728x90 320x100