Java

    로그 쿼리 확인(log4j/logback)

    1. Logback 현재 프로젝트 기준 logback.xml의 root의 level을 debug로 변경하면 로그 확인 가능 (...생략) ==> Preparing: select * , (select wname from scs_wlist where wid = A.wid) , (select task_name from scs_taskinfo where tid = A.tid) as task_name , (select server_name from scs_server where serverid = A.serverid_src) as server_name_src , (select server_name from scs_server where serverid = A.serverid_dst) as server_name_d..

    Java Thread (예제 newSingleThreadScheduledExecutor)

    1. CompletableFuture - Futer와 completionStage를 구현한 클래스 2. Future - 비동기적 연산의 결과 표현 클래스 - Multi Thread 환경에서 처리된 데이터를 다른 Thread에 전달 가능 - 내부적으로 Thread-Safe 하도록 구현되었기에 synchronized block을 사용하지 않아도 됨. 3. executorsService - ExecutorService는 Executor 확장 - 하나 이상의 비동기 작업의 진행 상황을 추적하기 위해 Executor 생성할 수 있는 종료 및 메서드를 관리하는 메서드 제공 - Future ExecutorService는 종료될 수 있으며 이로 인해 새 작업이 거부되며 ExecutorService를 종료하기 위해 두 ..

    Runnable JAR Export + Window Scheduler

    Runnable JAR Export + Window Scheduler

    1. Runnable JAR Export - Project Structure > Artifacts > + > JAR > From modules with dependencies... 2. .bat 파일 생성 .txt 파일 생성 > java -jar -Dfile.encoding=UTF-8 ???.jar > .bat 파일로 변환 3. 작업 스케줄러 등록 - 일반 : 스케줄러 기본 정보 - 트리거 : 스케줄 정보 - 동작 > 프로그램/스크립트 : .bat 파일 작성 - 동작 > 시작 위치 : .bat 파일 위치 작성

    String, StringBuffer, StringBuilder

    성능 우선 StringBuilder > StringBuffer >>> String 1. 단순 조회 : String 2. Multi Thread : StringBuffer(안전) + 잦은 수정 3. Single Thread : StringBuilder(빠름) + 잦은 수정 String [단점] - 객체 내부 데이터 수정 불가능으로 새로운 객체를 생성 > 수정을 거듭할수록 객체 수 증가로 인한 성능 저하 야기 [장점] - Buffer, Builder 보다 초기 리소스 적으며 크기 고정으로 단순 조회 연산이 빠르다. - 불변성을 가지기 때문에 Multi Thread 환경에서 안전(StringBuffer와 동일) StringBuffer - 동기화 지원으로 Multi Thread 환경에서 안전 - Concurre..