일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- hibernate 쿼리실행 순서
- 쿼리실행순서
- sql 테스트 사이트
- spring kakfa
- 설치없이쿼리실행
- 오라클쿼리테스트사이트
- 쓰기지연sql저장소 쿼리실행순서
- spring cloud stream
- Java
- 쿼리실행사이트
- Flush
- 쿼리사이트
- 중복컬럼dto매핑
- Oracle
- JPA
- ls -lgaf
- 컬럼명중복
- 스트림
- 쿼리테스트사이트
- 쓰기지연저장소
- port&adapter architecture
- Stream
- 포트앤어댑터 아키텍처
- Kafka
- dto매핑우선순위
- error 2002 (hy000): can't connect to local mysql server through socket '/tmp/mysql.sock' (2)
- sql사이트
- IntelliJ
- 자바
- group by group by rollup 차이
- Today
- Total
목록전체 글 (41)
개린이 탈출기
kafka 공부 중 세 개념이 생각보다 잘 구분이 안돼서 혼자 만의 기준으로 정리해보았다. Apache Kafka분산 메시징 시스템 및 스트리밍 플랫폼으로 대규모 실시간 데이터 스트림을 효율적으로 처리하는 도구Spring Kafka스프링 프레임워크에서 제공하는 라이브러리스프링부트 프로젝트에 최적화(혹은 손쉽게_=)하여 카프카 기술을 사용할 수 있음 (러닝커브가 낮음)Spring Cloud Stream스프링부트를 기반으로 메시지 브로커(apache kafka 같은 애들)에 대한 연결(바인딩)을 제공하는 프레임워크이러한 바인딩을 *추상화*로 제공하는 것이 특징
회사 개발자 분께서 재밌고 간단한 자바 퀴즈를 내셨다.너무 재밌어서 온 세상 사람들이 알았으면 해서 짧게 글을 남긴다.문제 1. null 값의 메서드를 부를 수 있을까!?문제 코드는 다음과 같다.class MyClass { static void guessMe() { System.out.println("Did you get the right answer?"); }}public class Main { public static void main(String[] args) { MyClass myClass = null; myClass.guessMe(); // 위 코드는 실행될까요? }} 부끄럽지만 나는 NullPointer E..
일을 하다보니 enum 이 정말 유용하고 편리하기 때문에 개발할 때 많이 사용하는 것 같은데, 정작 나는 enum의 필요성을 절실히 느껴본 적이 없었다.아직 다양한 경험을 해보지 못하고, 필요한 경우 이미 다른 분들이 개발해주셔서 enum의 필요성을 크게 느끼지 못하는 것 같아 강제 경험주입을 해보고자 이런 저런 예시를 인터넷에서 찾아보기로 했다. Enum 이란Enum은 Enumeration의 약자이다.네이버 영어사전에 검색해보면 '(하나하나)셈', '목록', '열거' 라는 뜻이 나온다. 과거 java 수업을 들을 때, 선생님 또한 enum 에 대해서 간단히 말하자면 상수(객체) 열거형 객체 라고 말해주신 적이 있다. 어떤 변하지 않는 수많은 상수 중 묶어낼 수 있는 상수끼리 모아 열거하여 묶어놓은 ..
새로 생성한 유저이름과 디폴트로 사용하고싶은 스키마의 이름이 다른 경우가 발생할 수 있다.현재 jpa를 이용하고 있는데, 엔티티클래스에서 스키마를 매핑하는 등 여러 해결법이 존재하는 것 같으나,나는 db 측면에서 로그인한 유저가 특정 스키마로 연결되도록 설정하고 싶었다. 유저 생성- cmd 를 이용하여 관리자 계정으로 접속한다-- 관리자 계정으로 로그인. 비밀번호를 입력하면 ' 다음에 접속됨: ' 이라는 메시지가 뜬다.C:\Users\myname>sqlplus as sysdba;-- C## 생략ALTER SESSION SET "_ORACLE_SCRIPT"=true;-- 유저 생성CREATE USER 유저명 IDENTIFIED BY 비밀번호;-- 기존의 유저 비밀번호를 까먹었을 때 재설정ALTER USE..

최근에 maven 을 사용하는 프로젝트에서 갑자기 빌드가 되지 않는 문제를 마주했다. 조금 당황했지만, 문제가 되는 라이브러리에 대응되는 버전의 폴더를 삭제하고 maven 프로젝트를 새로고침한 뒤 재실행 하니 문제가 감쪽같이 해결되었다. 왜...? SNAPSHOT 과 RELEASE의 차이 우선 SNAPSHOT 과 RELEASE 의 가장 큰 차이점 중 하나는 변경 가능성 이라고 생각한다. SNAPSHOT은 개발 단계에서 주로 사용하는 버전으로, 보통 변경 가능성이 높은 경우 SNAPSHOT으로 배포한다. 동일한 버전으로 스냅샷을 배포하면 1.0.0-SNAPSHOT. 20241212.123456-1 와 같이 타임스탬프와 일련번호를 섞어 스냅샷 버전을 구분할 수 있도록 한다. RELEASE 는 보통 변경 가..

QueryDSL을 사용하기 위해서 gradle.build 파일에서 의존성 선언을 하던 도중 의문점이 생겼다. dependencies 영역 안에 의존성을 추가하는데 annotationProcessor 는 처음보는 설정 이라서 어떤 건지 궁금증이 생겼다. 생각해보니 api, implementation 도 차이를 모른 채 별다른 생각 없이 사용했었다.이제부터라도 정확한 목적을 가지고 사용하기 위해서 의존성 선언 옵션들에 대해 찾아보게 되었다. 우선 Gradle 공식 홈페이지에서 의존성 설정에 대해 찾아보았다. 가볍게 정리해보자면api : 컴파일, 런타임 시 모두 필요하며 API 로 발행 시에도 포함되는 의존성implementation : 컴파일, 런타임 시 모두 필요한 의존성compileOnly : 컴파일 시..
스트림을 이용하여 Dto 리스트를 정렬하던 중 NullPointerException 을 마주하게 되었다. Jpa를 통해 Dto 리스트를 전달받아 자바에서 정렬처리를 하려고 했더니 NullPointerException 예외가 발생한 것이다.실제로 데이터를 확인해보니 정렬하려는 컬럼이 nullable 하였고 정렬 중 null 값을 마주하여 정상적으로 처리하지 못하고 NullPointerException 이 발생한 것 같아 보였다. 해당 상황을 재현해보자면 하단의 코드와 같다. @Getter @Setter @NoArgsConstructor @AllArgsConstructor public class Dto { private String nullableString; ..

인텔리제이에서 properties 파일을 열었을 때 다음과 같이 한글이 깨지는 현상이 발생했다. 이것저것 인코딩과 관련된 옵션을 고치다가 정답을 알아냈고 다음에 또 고생할까봐 기록을 남긴다. Settigns 창을 열어서 (단축키 : ctrl alt s )위의 Global Encoding 과 Project Encoding 의 값을 UTF-8 로 바꾸고아래 Default encoding for properties files: 를 UTF-8 로 수정해줘야 한다.그리고 하단의 Transparent native-to-ascii conversion 도 체크해줘야 한다.
JPA 를 활용하여 데이터를 관리하는 중인데 동일한 unique key 에 대한 delete 와 save 메서드를 사용하였더니 Duplicate Key 문제가 발생하였다. 결론적으로는 jpa를 통해 delete 관련 메서드를 호출해도 db에 동기화가 바로 일어나지 않고(직접 flush를 하거나 db 동기화가 일어나도록 하지 않는다면) 쓰기 지연 SQL 저장소에 쌓아두고 나중에 isnert 문과 함께 Db에 쿼리문을 보내준다. 이때 dbms 가 쿼리를 실행하기 전에 각 쿼리를 평가(최적화 및 실행 계획 등..)하는 과정에서 uniqueKey가 중복되는 insert문이 존재하므로 여기서 문제가 발생했던 것이다. 문제 원인실제 코드는 다음과 같다.public class MyEntity { @Id ..

처음보는 에러를 마주했다.무슨 에러일까 차근차근 에러메시지를 읽어보니, 그동안 몇번 발생했던 language level 과 관련된 오류 같아 보였다.그동안 하던대로 수정했는데 오늘따라 유독 프로젝트 빌드가 잘 되지 않아 어려움을 겪어서 평소보다 더 꼼꼼히 설정옵션을 읽어보았고, 그냥 내가 알게된 점을 조금 정리해두려고 한다. 오류 메시지java: diamond operator is not supported in -source 1.5 (use -source 7 or higher to enable diamond operator) 위의 메시지를 읽어보았을 때, diamond operator 는 1.5 소스에서는 제공되지 않으며 7 이상의 소스를 사용해야한다고 안내하고 있음을 알 수 있다.source 는 아마..