📕🐘 도로락 - 코끼리를 냉장고에 넣는 방법

# root (779)

자바[Java] 2026. 6. 4. 22:33

[Java] Record란? feat. Lombok

Record란?record는 Java 16에서 정식 도입된 문법으로, 데이터를 담기만 하는 불변(immutable) 객체를 단 한 줄로 만들어 주는 기능입니다.public record User(String name, int age) { }이 한 줄만 쓰면 생성자, 접근자(getter()), equals(), hashCode(), toString() 을 컴파일러가 전부 자동으로 만들어 줍니다. 예전에는 수십 줄을 직접 써야 했던 일을 자바 문법 하나로 끝내는 거죠. 그래서 DTO나 VO처럼 "값을 표현하거나, 전달하는 객체" 를 만들 때 가장 많이 쓰입니다.1. record의 등장 배경자바를 처음 배우면 이런 코드를 자주 만나게 됩니다. "이름과 나이만 담는 객체 하나" 를 만들고 싶을 뿐인데, 막상 제대..

자바[Java] 2026. 6. 4. 22:14

불변 객체(Immutable Object)란

불변 객체란?불변 객체(Immutable Object)는 생성된 이후 내부 상태(필드 값)가 절대 변하지 않는 객체입니다. 한번 만들어지면 소멸할 때까지 동일한 데이터를 유지합니다.자바의 대표적인 예가 String입니다. replace를 호출해도 원본은 그대로 두고 새 인스턴스를 반환합니다.String str = "hello";String result = str.replace("l", "L");System.out.println(str); // hello ← 원본은 그대로System.out.println(result); // heLLo ← 새 객체가 반환됨"수정"처럼 보이는 연산도 사실은 새 객체를 만드는 것입니다. Integer, Long 같은 래퍼 클래스와 LocalDate, Local..

데이터베이스[DB] 2020. 9. 1. 11:05

[Database] 다중컬럼(Multi Column) IN 연산자 설명

다중컬럼(Multi Column) IN 연산자 설명보통 IN 연산자를 사용할 때는 특정 컬럼이 여러 개의 값 중 하나일 때의 조건에 사용합니다.예를 들어 아래와 같이 사원 테이블이 있다고 가정하겠습니다.부서번호가 20, 30 인 부서에 속해있는 사원을 조회하는 경우 IN 연산자를 사용하여 아래와 같이 조회할 수 있습니다.SELECT * FROM EMPWHERE DEPTNO IN (20, 30);IN 연산자 대신 OR 를 사용할 수도 있습니다.SELECT * FROM EMPWHERE (DEPTNO = 20) OR (DEPTNO = 30);결과는 두 쿼리 모두 아래와 같습니다.이번에는 부서번호가 20 이면서 직책이 MANAGER이거나 부서번호가 30 이면서 직책이 CLERK인 사원을 알아보도록 하겠습니다..

데이터베이스[DB] 2020. 8. 26. 00:30

[Oracle] 오라클 열을 행으로 바꾸는 UNPIVOT 사용법 및 설명

오라클 열을 행으로 바꾸는 UNPIVOT 사용법 및 설명오라클에서 UNPIVOT을 사용하면 가로로 출력되는 여러 속성(COLUMN) 데이터를 세로로 돌려 행(ROW)으로 출력할 수 있습니다.사원들의 부서번호, 직책, 급여 보기오라클 사용자라면 누구나 알법한 SCOTT 형님(?)의 EMP 테이블입니다.SELECT * FROM EMP;사원정보를 담고 있으며, JOB(직책), SAL(급여), 부서번호(DEPTNO)가 실습시 사용될 컬럼입니다.사원들의 부서번호, 직책, 급여정보를 보도록 하겠습니다.SELECT ENAME, DEPTNO, JOB, SALFROM EMPORDER BY ENAME;평소 사용하던 문법이니 출렬 결과를 예상하셨을 것입니다.여러 속성들을 세로로 보기만약 부서번호, 직책, 급여를 속성(COL..

데이터베이스[DB] 2020. 8. 25. 16:32

[Oracle] 오라클 행을 열로 바꾸는 PIVOT 사용법 및 설명 및 PIVOT 대체하기

오라클 행을 열로 바꾸는 PIVOT 사용법 및 설명 및 PIVOT 대체하기오라클에서 PIVOT을 사용하면 세로로 출력되는 형식의 데이터를 가로로 뒤집어 출력할 수 있습니다.부서별 직책별 평균 급여 구하기오라클 사용자라면 누구나 알법한 SCOTT 형님(?)의 EMP 테이블입니다.SELECT * FROM EMP;사원정보를 담고 있으며, JOB(직책)과 SAL(급여), 부서번호(DEPTNO)가 실습시 사용될 컬럼입니다.각각의 부서별 직책별 평균 급여를 구해보도록 하겠습니다.SELECT DEPTNO, JOB, AVG(SAL)FROM EMPGROUP BY DEPTNO, JOBORDER BY DEPTNO, JOB;간단하게 출력되었으나 여러 행(ROW)로 출력되어 뭔가 한번에 정리가 되지 않아 불편합니다.세로를 가로..

Windows 2020. 8. 24. 00:01

[Windows] Windows10 원격 데스크톱 설정 및 접속 방법

Windows 10 원격 데스크톱 설정 및 접속 방법코로나로 재택 근무가 활성화 되면서 집에 있는 컴퓨터를 가지고 회사에 있는 PC에 원격 접속해야 하는 경우가 있습니다. 여러 가지 원격 솔루션(팀뷰어 같은)이 있지만 상업적 용도로는 유료이기에 Windows에 기본적으로 제공되는 원격 데스크톱 기능이 유용할 때가 있습니다.단 접속할 대상 PC는 Windows 10 Professional 버전이어야 합니다. 내 앞에 있는 PC(클라이언트)는 Pro 버전이 아니어도 관계없습니다.접속할 원격 PC에서의 설정이 먼저 필요합니다.원격 PC 설정시작버튼에서 설정 진입Windows 왼쪽 하단에 시작버튼을 마우스 우클릭합니다.설정 클릭시스템 클릭원격 데스크톱 활성화원격 데스크톱 활성화를 켬으로 변경합니다.방화벽 설정이..

데이터베이스[DB] 2020. 8. 23. 12:00

[Oracle] 여러행의 데이터를 하나의 행에 가로로 출력하기 LISTAGG 함수 사용법

여러행의 데이터를 하나의 행에 가로로 출력하기 LISTAGG 함수 사용법여러행의 데이터를 하나의 행에 가로로 출력이 가능합니다.예를 들어 아래 사원 테이블을 보죠.SELECT EMPNO, ENAME, JOB, DEPTNO FROM EMP;사원원호(EMPNO), 사원명(ENAME), 직책(JOB), DEPTNO(부서번호)가 있습니다.10번 부서에 속한 사원 목록여기서 10번 부서의 사원명을 구해봅니다.SELECT DEPTNO, ENAME FROM EMP WHERE DEPTNO = 10;10번 부서에 속해있는 사원이 세명이기에 세개의 행이 출력되었습니다.각 부서에 속한 사원 목록이번에는 10번부서 뿐만 아니라 각 부서별 사원명을 출력해 보도록 하겠습니다. GROUP BY를 사용할 수 있을것입니다.SELECT..

툴 [Tool] 2020. 8. 23. 07:30

[DataGrip] 쿼리 실행 결과가 쿼리 에디터 창에 나타나게 하기

DataGrip 쿼리 실행 결과가 쿼리 에디터 창에 나타나게 하기DataGrip에서 쿼리 실행 결과를 하단의 결과창에 나타나는 것이 아닌 에디터상에서 해당 쿼리 하단에 나타나도록 할 수 있습니다. 여러 가지 쿼리가 있고 각각의 결과를 비교하거나 실행 후 여러 번 왔다 갔다 하면서 봐야 할 때 유용한 기능입니다.왼쪽 상단의 File → Settings...Database → General → Show output results in editor에 체크 후 설정을 저장하면 됩니다.결과창을 지울 때는 잘 보이지 않지만 왼쪽 line number 쪽의 x 버튼을 클릭하여 지울 수 있습니다.

툴 [Tool] 2020. 8. 23. 00:01

[DataGrip] 트랜잭션 commit 설정 수동/자동 변경하기

DataGrip 트랜잭션 commit 설정 수동/자동 변경하기DataGript에서 트랜잭션 커밋 설정은 기본적으로 수동(Manual)로 되어 있습니다.커밋 설정이 수동인 경우 쿼리를 실행한 이후에는 체크 표시를 누르게 되면 커밋(commit)이 되며, 뒤로 감기 화살표 표시를 누르게 되면 롤백(roallback)이 됩니다. 물론 commit과 rollback 명령어를 통해서도 가능합니다.commit 설정을 쿼리 실행한 즉시 실행되도록 자동으로 변경하는 경우 트랜잭션 커밋 설정 화살표를 누른 후 Auto로 바꿔주면 됩니다.

툴 [Tool] 2020. 8. 22. 21:02

[DataGrip] 쿼리 실행시 선택하지 않고 현재 커서가 있는 쿼리 바로 실행하도록 하는법

DataGrip 쿼리 실행시 선택하지 않고 현재 커서가 있는 쿼리 바로 실행하도록 하는법DataGrip에서 아래처럼 쿼리가 있는 쿼리문에는 네모 박스 영역이 나타나고 됩니다.여기서 Ctrl + Enter를 단축키로 눌러 실행하게 되면 Statements라는 팝업이 나타나면서 현재 쿼리 실행창에 있는 여러 쿼리들 중 어떤 쿼리를 실행할것인지 선택할 수 있게 됩니다.이 기능이 어떤면에서는 편리할수도 있겠지만 쿼리 실행시 곧바로 실행되지 않고 한단계를 더 거치게 되므로 설정을 꺼버리고 싶을 수 있습니다.왼쪽 상단의 File → Settings...Database → General → When inside statement excuete 설정을 Smallest statement로 바꾸고 저장하면 SQL Deve..