[Java] log.debug() vs log.info() – 언제, 어떻게 써야 할까? Java 또는 Spring Boot에서 로그를 찍을 때 log.debug()와 log.info()를 많이 사용합니다.하지만 둘의 차이를 정확하게 알아서 사요에 헷갈리지 않게 적어보려고 합니다.두 로그 레벨의 차이와 사용법을 Spring 기반의 SLF4J + Logback 환경 기준으로 정리해봅니다. 로그 레벨이란?로그에는 여러 단계(Level)가 있으며, 각 단계는 로그의 중요도와 목적을 구분하는 기준입니다. log.debug()log.debug("디버그용 상세 로그: 변수 값 = {}", test); 목적: 디버깅용 상세 정보 출력내용: 반복문 내부 값, 분기 조건, 로직 흐름 등운영 환경: 보통 DEBUG 레벨은 운영환경에선 출력되지 않도록 설정함🟨 Tip: 성능 이슈 방지를 위해 무분별한 사용은.. 2025. 6. 23. [IntelliJ(인텔리제이)/Error] Replace `········` with `↹↹↹↹` prettier/prettier 오류 문제상황: Prettier와 ESLint를 프로젝트에 적용하던 중 아래과 같은 오류가 ESLint에서 발생했습니다.수정만 하면 계속 아래와 같은 오류가 발생하는 상황이었습니다. 처리내역:아래 참고한 URL을 봤을땐 프로젝트에 이미 AUTO로 선언이 되어있는 상황이었습니다.수정한 라인을 선택하여 노란 전구 > 코드스타일 설정 조정 을 진행하였습니다.아까와 같은 오류 없이 화면에서 문제없이 테스트가 되었습니다ㅠㅠ 저는 이미 참고URL 에 가이드해준 대로 세팅이 완료된 상태에서도 동일한 현상이 났을때 진행한 방법입니다!각자 본인에 맞춰 진행하시면됩니다~ [참고 URL]https://noogoonaa.tistory.com/62 VSCode에서 발생하는 Delete `␍` eslint (prettier/pr.. 2025. 6. 16. [Spring/ERROR] 에러 처리 방식 정리(사용자인식, 시스템처리) - 사용자 인식 ERROR 처리throw new UserHandleException(): 사용자에게 알림(팝업)을 띄우기 위한 커스텀 예외로 많이 사용합니다. : 프론트엔드(또는 컨트롤러 레이어)까지 예외가 올라가면서 클라이언트에 메시지를 보여주는 용도입니다. if (fileList.isEmpty()) { throw new UserHandleException("첨부파일이 없습니다.");} - 시스템 ERROR 처리try{}catch{} / log.error() / log.debug)(): 예외발생 시 시스템에서 잡아서 로그만 내부적으로 에러 기록됨try { connectToSftp();} catch (JSchException e) { log.error("SFTP 연결 실패", e);} 2025. 6. 13. [IntelliJ(인텔리제이)] 플러그인(plugin) 설치하기 [계속 추가 예정] 플러그인 설치 url : 파일 > 설정 > 플러그인 Grep Console콘솔 창 텍스트 컬러 지정, 필터 등을 할 수 있습니다.로그 레벨 별 색 지정 시 한눈에 보기 좋고, 필터 사용해서 로그 보기 좋습니다. 2025. 6. 13. [Git] branch 관련 명령어 모음 git branch --show-current: 현재 브랜치 이름 확인 git checkout 브랜치명: 브랜치로 이동할 때local에 브랜치가 없는 경우에는 아래와 같이 오류가 발생합니다. 그런 경우는 git fetch를 진행하여 다시 브랜치 이동하면됩니다. git branch -r : 리모트 브랜치를 조회git branch -a : 로컬 저장소와 원격 저장소의 모든 브랜치를 조회 branch reference updategit fetch -p 와 git fetch --prune 동일 :로컬 저장소를 최신 정보로 갱신(리모트 저장소와 동기화)하며 자동적으로 더이상 유효하지 않은 참조를 제거합니다.(즉, 원격(origin)에서는 이미 지워진 브랜치인데, 로컬에는 아직 남아있는 "가짜 브랜치들"을 없애.. 2025. 6. 11. [IntelliJ(인텔리제이)] read-only 로 인해 코드 수정 안되는 현상 소스 수정하면서 진행중에 갑자기 아래와 같은 팝업이 나와 검색을 엄청 하던 중에 발견했습니다. OUT 으로 되어있는 파일의 소스를 고치고 있는게 아닌지 확인해보시면됩니다!SRC 로 되어있는 파일의 소스를 수정해야 문제없이 수정이 됩니다!! 2025. 6. 10. [Git] Intellij 체크아웃(Checkout)과 업데이트(Update)의 개념 차이 체크아웃(Checkout)과 업데이트(Update)의 개념 차이 ✅ 1. 체크아웃(Checkout)이란?특정 브랜치로 전환하는 작업예를 들어, 현재 feature/xxx 브랜치에 있었는데 → release 브랜치로 바꾸고 싶다면 체크아웃을 해야한다.이건 **브랜치 "이동"**을 의미해.📌 예시git checkout release결과 : release 브랜치로 전환됨 (로컬에 있는 release 브랜치 기준) ✅ 2. 업데이트(Update)란?현재 체크아웃된 브랜치에 대해, 원격 저장소의 최신 커밋을 가져오는 작업즉, 현재 내가 보고 있는 브랜치의 최신 소스를 내려받는 행위야.📌 예시git pull결과 : release 브랜치로 최신 commit된 내역들 프로젝트 udpate 됨release 브랜.. 2025. 6. 5. [MSSQL] MSSQL PARSENAME 함수 (MSSQL 전용) PARSENAME 함수란? (MSSQL 전용): PARSENAME은 **SQL Server의 객체 이름(4단계 이름 구조)**을 파싱해서 원하는 부분을 반환해주는 함수 PARSENAME('object_name_string', part_number)part_number 반환되는 값 1 객체 이름 (예: 테이블) 2 소유자 이름 (예: 스키마) 3 데이터베이스 이름 4 서버 이름 📌 예시:SELECT PARSENAME('ERP.dbo.테이블명', 1) AS ObjectName -- 결과: 테이블명SELECT PARSENAME('ERP.dbo.테이블명', 2) AS SchemaName -- 결과: dboSELECT PARSENAME('ERP.dbo.테이블명', 3) AS DBName -- .. 2025. 5. 30. [MSSQL] MSSQL 칼럼 대소문자 구분 방식 (COLLATE, COLLATION) 기본적으로 MSSQL에서 대소문자 구분이 안됩니다.이게 ORACLE과 의 차이라고 볼 수 있습니다. 그래서 TABLE 생성 시 칼럼에 설정이 필요합니다~그리고 SQL Server(=MSSQL)를 사용하다 보면 COLLATE Latin1_General_CI_AS와 같은 정렬 방식이 종종 등장합니다. SELECT name , description FROM sys.fn_helpcollations(); 🔍 1. 정렬 방식(Collation)이란?정렬 방식(Collation)은 데이터베이스에서 문자 데이터를 정렬하고 비교하는 규칙을 정의하는 설정입니다.예를 들어, a와 A를 동일하게 볼지 다르게 볼지, á와 a를 동일하게 취급할지 등을 결정합니다.MSSQL에서는 데이터베이스, 테이블, 열(Column.. 2025. 5. 20. [IntelliJ(인텔리제이)] System.out.println 자동 완성 이클립스에서는 sysout 하고서 ctrl + space 누르면 System.out.println(); 이 되었지만,intellj에서는 먹히지 않아서 없는 줄 알았습니다.. IntelliJ에서 sout 또는 so 입력하고 tab 키를 누르면 System.out.println()이 자동으로 완성됩니다. so 작성하니깐 아래와 같이 나머지 자동완성할 수 있는 예시가 출력되네요..ㅎ 참고용으로 보면 좋을 것 같아서 같이 첨부합니다! 2025. 4. 14. 이전 1 2 3 4 ··· 23 다음 320x100