블로그 마크다운 코드블럭 색상 적용 문제 해결 방법 (Markdown Code Highlighting)
·
IT 기술
마크다운(Markdown) 코드블럭에 색상이 적용되지 않는 경우가 있습니다. 주로 Markdown 렌더링 엔진 설정 문제 또는 코드 하이라이팅 플러그인 설정 오류 때문입니다. 이번 글에서는 코드블럭에 색상이 표시되지 않는 원인을 분석하고, Jekyll, Hexo, Hugo 등 블로그 플랫폼별 해결 방법을 자세히 정리해보겠습니다.🎯 블로그 마크다운 코드블럭 색상 문제 해결 방법1️⃣ 마크다운 코드블럭에 언어 지정하기 (Code Fencing)마크다운에서 코드 하이라이팅이 적용되려면 코드블럭의 언어를 명확히 지정해야 합니다.❌ 잘못된 예시 (색상 없음)```console.log("Hello, world!");```이렇게 작성하면 코드가 단순한 텍스트로 표시되며, 문법 하이라이팅이 적용되지 않습니다.✅ 올바..
Spring Boot에서 Security 적용 시 H2 Console(/h2-console) 접근 불가 문제 해결 방법
·
IT 기술/Spring boot
Spring Boot 환경에서 Spring Security 설정을 활성화한 상태에서 In-memory H2 Database를 사용할 경우, /h2-console에 접근이 차단되는 문제가 발생할 수 있습니다. 이는 기본적으로 Spring Security가 모든 요청을 보호하기 때문입니다. 이번 포스팅에서는 Spring Boot 2.x 및 3.x 버전에서 H2 Console 접근 문제를 해결하는 방법을 설명합니다.🔍 Spring Boot H2 Console 접근 불가 원인Spring Boot 2.x 이상에서는 Spring Security가 자동으로 활성화되며, 기본적으로 모든 경로에 대한 인증을 요구합니다. 또한, H2 Console(/h2-console)은 프레임을 사용하여 UI를 제공하는데, Sprin..
개강
·
이야기
다시 새 학기가 밝았습니다.이제 4학년 1학기를 시작하게 되었군요.. 졸업이 머지 않았습니다. 1.이번 학기에도 객체지향프로그래밍 강의의 학부조교를 맡게 되었습니다. 지난 학기에 진행했던 학교 eCampus(가상대학)에서 VPL 프로그램을 활용한 프로그래밍 과제 관리 작업이 호평을 받은 듯 합니다. (VPL은 Virtual Programming Lab이란 온라인 코딩 채점 및 관리가 가능한 오픈소스입니다.) 이번 학기에는 이를 더 발전시켜, 해당 교과목의 커리큘럼을 정규화하는 주요 업무를 맡게 되었습니다. 이번 학기에도 다른 학부조교님들과는 다르게, 교내/온라인에서 일정시간 상주하며 학생들의 질의응답을 받지 않고, 별도 지정된 시간 없이 자유롭게 근무하기로 하였습니다. 완전하지는 않지만, 작은 의미의 시..
학교 공지 스크래핑 봇 ‘kookmin-feed’, 개발 3주 후 이야기
·
이야기
1약 3주 전, 디스코드와 연동된 학교 공지 피드 봇을 만들었습니다. 제가 다니고 있는 국민대학교의 단과대 공지사항을 빠르게 확인하고, 중요한 소식을 놓치지 않기 위해서였습니다. 학교 앱을 통해 공지가 전달되긴 하지만 원치 않는 소식까지 함께 들어왔기에, 이참에 직접 만들어 보기로 했습니다.사실 2년 전에도 비슷한 프로젝트를 시도했지만, 여러 이유로 포기했던 아쉬운 기억이 있습니다. 이번 프로젝트는 당시와 방향성이 달라 완전히 다른 프로젝트라고 할 수도 있지만, 그때의 이야기는 나중에 기회가 되면 풀어보겠습니다.2이 프로젝트의 설계부터 프로토타입 개발까지 약 1시간 30분이 걸렸습니다. 봇 설정과 EC2 업로드까지 포함하면 2시간 정도 걸린 셈입니다. RSS를 지원하는 부분은 금방 개발했지만, 지원하지 ..
Connection Pool과 @Transactional: 효율적인 데이터베이스 관리를 위한 핵심 개념
·
IT 기술/Spring boot
Connection Pool과 @Transactional: 효율적인 데이터베이스 관리를 위한 핵심 개념데이터베이스와 상호작용하는 애플리케이션을 개발할 때, 성능과 안정성을 확보하기 위해 Connection Pool과 @Transactional을 이해하고 활용하는 것이 필수적입니다. 이번 글에서는 두 개념이 어떻게 동작하는지, 그리고 실제 개발에서 어떻게 활용하면 좋은지에 대해 알아보겠습니다.1. Connection Pool이란?데이터베이스에 연결하는 과정은 생각보다 비용이 많이 듭니다. 새로운 연결을 생성하는 과정에서 네트워크 통신이 발생하고, 인증 및 세션 설정도 필요하기 때문이죠. 이를 해결하기 위해 Connection Pool을 사용합니다.✅ Connection Pool의 동작 방식초기화: 애플리케..
/gradlew bootRun은 어떻게 동작하는가?
·
IT 기술/Spring boot
/gradlew bootRun은 어떻게 동작하는가?Spring Boot 애플리케이션을 실행할 때 흔히 사용하는 명령어가 있습니다../gradlew bootRunGradle을 사용한 Spring Boot 프로젝트라면 익숙한 명령어지만, 정확히 어떻게 동작하는지 알고 있나요?이번 글에서는 ./gradlew bootRun이 내부적으로 어떤 과정을 거치는지 알아보겠습니다.1. ./gradlew란?먼저, ./gradlew는 Gradle Wrapper의 실행 파일입니다. Gradle Wrapper를 사용하면 프로젝트마다 독립적인 Gradle 버전을 관리할 수 있으며, Gradle이 설치되지 않은 환경에서도 자동으로 다운로드하여 실행할 수 있습니다.gradle vs gradlew 차이점gradle : 시스템에 설치된..