본문으로 건너뛰기
홈
기술
기술 전체
프로그래밍68
컴퓨터 과학63
AI48
웹 개발36
인프라33
데이터31
소프트웨어 공학18
소개

최신 글

기술과 일상을 함께 기록합니다.

전체 기록

297

NIO

Java NIO의 Channel과 ByteBuffer의 position·limit·capacity를 설명하고 다이렉트 버퍼와 Selector의 선택 기준을 살펴본다.

· 3분 읽기

[JAVA NIO] WatchService(와치서비스)

Java WatchService로 디렉터리 생성·수정·삭제 이벤트를 감시하고 키 재등록, 중복·누락 이벤트 및 파일 기록 완료 시점을 다룬다.

· 2분 읽기

Git 명령어

작업 디렉터리·스테이징·커밋·원격 저장소의 차이를 실습하고, 브랜치 병합과 변경 복구 명령을 구분한다.

· 4분 읽기

규칙 2. 생성자 인자가 많을 때는 Builder 패턴 적용을 고려하라

선택 인자가 많은 Java 객체를 Builder로 구성하고 필수값 검증, 중간 상태 차단, 빌더 재사용 시 주의점을 예제로 살펴본다.

· 2분 읽기

규칙 1. 생성자대신 정적 팩터리 메서드를 사용할 수 없는지 생각해 보라

Java 정적 팩터리 메서드의 이름·반환 타입·객체 재사용 이점을 생성자와 비교하고 선택 시 고려할 제약을 예제로 설명한다.

· 2분 읽기

리눅스에서 could not initialize class javax.imageio.ImageIO 에러가 발생할 경우

Linux에서 Java ImageIO 초기화가 실패할 때 최초 예외를 확인하고, 네이티브 라이브러리와 headless 설정을 점검한다.

· 2분 읽기

리눅스에서 java.lang.NoClassDefFoundError: sun/awt/X11GraphicsEnvironment 에러가 발생할 경우

Linux 서버의 Java X11GraphicsEnvironment 오류를 진단하고, headless 모드의 적용 조건과 Tomcat 실행 옵션을 확인한다.

· 3분 읽기

[DB설계]1. PK 컬럼 순서, 대충하지 말자

복합 기본 키의 컬럼 순서가 인덱스 조회 범위에 미치는 영향을 비교하고, 조회 조건과 변경 비용을 함께 검토한다.

· 4분 읽기

[병렬처리]2. 스레드의 안전성

공유 가변 상태가 스레드 안전성에 미치는 영향을 살펴보고 동기화·캡슐화·불변 객체로 클래스의 정확성을 지키는 방법을 정리한다.

· 8분 읽기

String 보다는 StringBuilder, StringBuffer를 사용해야하는 이유.

문자열 누적 상황에서 String과 StringBuilder의 생성 비용을 비교하고 StringBuffer의 동기화가 필요한 범위를 예제로 설명한다.

· 2분 읽기

Mybatis란? 그리고 설정하는 방법...

MyBatis의 SqlSessionFactory와 XML 매퍼를 설정해 한 건을 조회하고, 트랜잭션 경계와 안전한 SQL 매개변수를 확인한다.

· 4분 읽기

[링크]셧다운 후크를 사용한 어플리케이션의 안전한 종료 처리

JVM 셧다운 훅으로 Executor 작업을 제한된 시간에 정리하는 방법과 훅이 실행되지 않는 종료 상황, 훅 사이 순서 제약을 살펴본다.

· 1분 읽기