분류 전체보기 87

Spring Boot의 설정 파일 - yml과 properties의 차이

Spring Boot에서는 애플리케이션의 실행 환경에 따라다양한 설정값을 관리할 수 있도록 application.yml 또는 application.properties 파일을 사용한다. 두 형식 모두 설정 기능은 동일하지만, 문법적 구조나 가독성, 유지보수 측면에서 차이가 존재한다. 이번 글에서는 각 파일의 특징과 문법, 예시를 살펴보고, 어떤 상황에서 어떤 설정 파일을 사용하는 것이 더 적합한지 정리해본다. 1) Spring Boot의 설정 파일1-1) 설정 파일의 역할Spring Boot에서는 애플리케이션의 설정값(포트, DB 정보, 로깅 등)을외부 설정 파일에 정의하여 관리할 수 있다.대표적으로 application.properties와 application.yml이 있으며,두 형식 모두 동일한 목적..

[Linux] 로그 파일에서 특정 텍스트 찾아 추출하기

운영 서비스의 서버 로그 파일을 분석하다 보면 특정 에러 메시지나 경고 텍스트를 빠르게 추출해야 할 때가 있다. 이 글에서는 직접 실무에서 사용했던 경험을 바탕으로,특정 기간 동안의 로그 파일에서 "로그저장에 실패했습니다"라는 문구가 포함된 내용을 자동으로 추출하는 쉘 스크립트를 작성하고 실행하는 방법을 소개하려고 한다. 1) 쉘 스크립트 작성 과정1-1) vim 에디터로 파일 만들기$ vim extract_failed_logs.sh이 명령어로 새 스크립트 파일을 생성하거나 열 수 있다. 1-2) 스크립트 내용 작성아래는 2025년 7월 1일 ~ 31일 사이의 로그 파일에서 특정 문구를 추출하는 쉘 스크립트이다.2번 챕터에서 라인 별로 설명해보겠다.#!/bin/bashSTART_DATE="20250701..

Server/Linux 2025.07.25

RESTful API GET과 POST의 특징과 차이점

RESTful API에서 가장 기본이 되는 HTTP 메서드인 GET과 POST는 사용 목적과 동작 방식에 명확한 차이가 있다. 두 메서드의 정의, 특징, 사용 목적, 예시를 통해 차이점을 자세히 정리해보자. 1) GET 메서드1-1) 정의GET은 서버로부터 데이터를 "조회"할 때 사용하는 메서드이다.클라이언트가 서버에게 정보를 요청할 때 사용되며,URL에 쿼리 파라미터를 포함시켜 전송한다. 1-2) 특징데이터를 요청하기 위한 용도로만 사용됨요청 데이터는 URL의 쿼리 스트링에 포함됨캐싱이 가능함브라우저 히스토리에 남음URL에 직접적으로 노출되기 때문에 보안에 취약할 수 있음1-3) 예시GET /user?id=123 HTTP/1.1Host: api.example.com > 위 요청은 ID가 123인 사용자..

Dev Knowledge/Web 2025.07.24

[Oracle] 행을 열로, 열을 다시 행으로 바꾸는 함수(PIVOT, UNPIVOT)

Oracle SQL에서 PIVOT과 UNPIVOT 절은행과 열을 자유롭게 변환할 수 있게 해주는 기능이다.PIVOT은 집계된 행 데이터를 열로 회전시켜 요약 정보를 보기 쉽게 만들며, UNPIVOT은 열 형태의 데이터를 다시 행으로 풀어낼 수 있어 정규화나 전처리에 유용하다. 이 글에서는 PIVOT과 UNPIVOT의 기본 문법, 사용 방법, 그리고 실제 예시를 통해 데이터 구조를 효율적으로 바꾸는 방법을 알아본다. 1) PIVOT 정의PIVOT은 테이블의 행 데이터를 열로 회전시켜 요약된 형태로 변환하는 기능이다.주로 집계 함수와 함께 사용되며,GROUP BY 없이도 여러 값을 비교할 수 있는 열 중심 구조를 만들어준다. 2) PIVOT 문법 및 특징PIVOT은 서브쿼리 형태로 작성되며, 다음과 같은..

DataBase/Oracle 2025.07.22

[Oracle] 행을 문자열로 이어주는 LISTAGG 함수

LISTAGG 함수는 Oracle에서 여러 행으로 존재하는 문자열 데이터를 하나의 문자열로 연결할 때 사용하는 집계 함수이다. 특히 그룹별로 문자열을 구분자와 함께 연결할 수 있어, 보고서나 통계 데이터를 만들 때 매우 유용하게 사용된다. 이 글에서는 LISTAGG 함수의 문법과 특징, 기본 사용법부터 중복 제거 및 예외 처리 등 예시까지 함께 살펴본다. 1) 문법LISTAGG(컬럼명, '구분자') WITHIN GROUP (ORDER BY 정렬기준컬럼)- 컬럼명: 연결하고자 하는 문자열 컬럼 - '구분자': 각 항목 사이에 삽입할 문자 (예: 쉼표, 슬래시 등) - ORDER BY: 연결될 문자열의 정렬 기준 2) 특징여러 행의 문자열 값을 하나의 행으로 연결하여 출력ORDER BY를 통해 연결 순서..

DataBase/Oracle 2025.07.21

[Oracle] 순위 함수(DENSE_RANK, RANK 함수)

데이터를 순위별로 정렬할 때 자주 사용되는 Oracle의 분석 함수 중 DENSE_RANK와 RANK는 비슷한 역할을 하지만, 중복 순위 발생 시 처리 방식에서 차이가 있다. 두 함수 모두 OVER 절과 함께 사용되어 순위를 매기며, 다양한 통계 처리나 보고서 쿼리에서 유용하게 활용된다. 이 글에서는 DENSE_RANK와 RANK의 문법과 차이점, 실제 사용 예시를 중심으로 알아보자. 1) DENSE_RANK 함수1-1) 정의DENSE_RANK는 동일한 값에 같은 순위를 부여하며, 그 다음 순위는 건너뛰지 않고 연속된 숫자로 부여되는 순위 함수이다. 1-2) 문법DENSE_RANK() OVER (PARTITION BY 컬럼명 ORDER BY 컬럼명) 1-3) 특징동일한 값(동순위)에는 같은 순위를 부여함..

DataBase/Oracle 2025.07.17

[JavaScript] 문자열 시작과 끝을 확인하는 함수(startsWith, endsWith)

자바스크립트에서 문자열이 특정 문자로 시작하거나 끝나는지를 확인하고 싶을 때 사용하는 함수가 startsWith()와 endsWith()이다. 이 함수들은 정규식을 쓰지 않고도 문자열 비교를 간편하게 할 수 있어 자주 활용할 수 있다. 1) startsWith()1-1) 문법str.startsWith(searchString[, position])searchString: 검사할 문자열position: 문자열의 어느 인덱스부터 시작할지를 지정 (기본값은 0) 1-2) 특징문자열이 지정한 문자로 **시작**하는지 확인하고 true 또는 false를 반환한다.position 인자를 통해 중간 위치부터 검사할 수 있다.대소문자를 구분한다.정규표현식을 사용할 수는 없다. 1-3) 기본 예시'JavaScript'.s..

[Java] 자바 전역변수, 지역변수, static 변수란?

자바에서 변수는 선언 위치에 따라 전역변수와 지역변수로 나뉘며, static을 사용하면 객체 없이도 공유되는 클래스 변수로 사용할 수 있다.이번 글에서는 전역변수, 지역변수, static 변수에 대해 알아보자. 1) 전역변수1-1) 정의전역변수는 클래스 내부에서 선언된 변수로, 객체 전체에서 사용할 수 있다. 주로 필드(Field)라고 부른다. 1-2) 특징클래스의 모든 메서드에서 접근 가능객체가 생성될 때 메모리에 함께 올라감초기화를 하지 않아도 기본값이 자동으로 설정됨 1-3) 사용예시class Student { String name; // 전역변수 int age; // 전역변수 void printInfo() { System.out.println(name + "..

Java/Java 2025.07.11

[Java] 생성자(Constructor) 기본 개념 정리

자바에서 객체를 생성할 때 호출되는 생성자에 대해 정리하였다.생성자의 기본 개념부터 메서드 호출, 오버로딩, 특징까지 알아보자. 1) 생성자란?생성자는 객체가 생성될 때 자동으로 실행되는 특별한 메서드이다.클래스 이름과 같고, 리턴 타입이 존재하지 않는다.class Student { String name; int age; // 생성자 Student(String inputName, int inputAge) { name = inputName; age = inputAge; }}예를 들어 new Student("민지", 20)을 호출하면 생성자가 실행되며 필드가 초기화된다. 2) 생성자 안에서 메서드 호출생성자 내부에서 메서드를 호출하면 객체 초기화와 동시에 ..

Java/Java 2025.07.09

[SQL] 자주 쓰이는 숫자 연산 함수 정리 (ABS, POWER, SQRT, SIGN)

SQL에서는 숫자 계산 시 절댓값, 제곱, 제곱근, 부호 판단 등수학 연산이 필요한 경우가 많다.이번 글에서는 실무에서 자주 사용되는 수학 관련 숫자 함수들을 예제와 함께 정리해본다.Oracle을 기준으로 설명하며, 대부분의 DB에서 유사하게 지원된다. 1) ABS – 절댓값1-1) 문법ABS(number) 1-2) 특징입력된 숫자의 절댓값을 반환한다음수 → 양수로 변환, 양수 → 그대로 반환 1-3) 예시SELECT ABS(-10) AS a1, ABS(7.3) AS a2 FROM dual;a1: 10a2: 7.3 1-4) DB별 사용 가능 여부Oracle지원MySQL지원PostgreSQL지원MSSQL지원 2) POWER – 거듭제곱2-1) 문법POWER(base, exponent) 2-..

DataBase/SQL 2025.07.08