Web Devloper HSRyuuu Blog

Web 개발부터 소프트웨어 엔지니어링 전반을 다룹니다.
#웹개발 #Java #Spring #DevOps #AI

- github: https://github.com/HSRyuuu
- contact: happyhsryu@gmail.com

Best

[ AI ] 클로드 스킬(Claude Skills, Agent Skill) 사용 방법, 커스텀해서 에이전트 만들기
·
AI
Agent Skills란?Agent Skills는 Claude의 기능을 확장하는 모듈입니다. 각 Skill은 지시사항, 메타데이터를 포함하고, 선택적으로 스크립트나 템플릿 같은 리소스를 패키징하여 Claude가 관련 작업을 수행할 때 자동으로 활용하게 할 수 있습니다.쉽게 말해, Skill은 새로운 claude 세션에게 줄 온보딩 가이드와 같습니다. 특정 도메인의 워크플로우, 컨텍스트, 베스트 프랙티스를 담아두면 Claude가 필요할 때 참조하여 도메인 전문가처럼 행동하게 됩니다.Skills를 사용하는 이유기존 프롬프트의 한계매번 대화할 때마다 같은 지침을 반복해서 입력하는 것은 비효율적입니다:Java 코드를 작성할 때는 Spring Boot 3.x 규칙을 따르고, Entity는 protected 기본 ..
Spring AI로 RAG 챗봇 만들기 – Ollama, pgvector 부터 API 까지
·
AI
시작하기 전에, 이 글은 개념 정리는 없는 실습 글입니다.RAG 및 AI 개념에 대해 정리한 글이 있으니, 참고하세요.[Spring AI] Spring Boot에 LLM을 도입하기 전 꼭 알아야 할 RAG 개념 정리 [Spring AI] Spring Boot에 LLM을 도입하기 전 꼭 알아야 할 RAG 개념 정리이 글은 AI, RAG에 대해 기술적으로 전혀 모르는 상황에서 인앱 AI를 도입하기 위한 기본 개념을 정리합니다. 이 개념을 이해한 후에, 아래 Spring AI 실습 글을 보시길 바랍니다.(이 글에서 Spring AI는innovation123.tistory.com 특정 도메인의 정보를 LLM이 읽어서 챗봇처럼 대답해 주기 위한 기본 흐름은 아래와 같다.특정 도메인을 임베딩 하여 vector DB..
카카오 로그인 API 사용 방법 - 2025 ver (Java, Spring)
·
Spring
이 글은 과거(2023년 10월) 작성했던 글을 현재(2025년 12월)을 기준으로 리뉴얼 한 글이다.과거와 비교했을 때 달라진 점은 크게 없고, kakao에서 마이그레이션을 잘 해줘서 문제없지만, 사소하게 달라진 점들이 있다.예를들면 당시에는 사용자 email, 연령 등의 정보를 쉽게 얻을 수 있었는데, 지금은 비즈니스앱인증을 받아야 되는 등... 이런것들이 바뀌었다.2023.10.14 - [Spring] - [Spring] 카카오 로그인 API 사용 방법kakao developershttps://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해 보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다..
[Algorithm/Java] DFS(깊이 우선 탐색)
·
자료구조 & 알고리즘
DFS(Depth-First Search) : 깊이 우선 탐색 그래프 완전 탐색 : 모든 노드를 방문하고자 할때, 이 방법을 선택한다. 그래프의 시작 노드에서 출발하여 탐색할 한 쪽 분기를 정해서 최대깊이까지 탐색을 마친 후, 다른쪽 분기로 이동하여 다시 탐색을 수행하는 알고리즘이다. 재귀함수 또는 Stack 자료구조를 이용한다. 재귀함수를 이용하므로 stack overflow에 유의해야 한다. 스택 오버플로우(stack overflow)는 지정한 스택 메모리 사이즈보다 더 많은 스택 메모리를 사용하게 되어 에러가 발생하는 상황을 일컫는다. 1. 시간복잡도 (노드 수: N, 에지 수 E) 인접 리스트 노드의 개수가 많고, 간선 수가 적을 때 유리하다. 인접 행렬 노드의 개수가 적고, 간선 수가 많을 때 ..
[Spring] @Transactional 전파수준 정리 - Propagation 예제코드로 테스트해보기
·
Spring
@Transactional 전파 수준이란?Spring에서는 @Transactional을 통해 트랜잭션을 선언적으로 쉽게 관리한다.대부분의 경우 기본 전파 수준인 REQUIRED만으로도 충분하지만, 하나의 서비스 메서드에서 또 다른 트랜잭션 메서드를 호출할 때, 전파 전략을 명확히 이해하고 설정하지 않으면 원치 않는 rollback 또는 commit이 발생할 수 있다. 트랜잭션 전파 수준은 “이미 존재하는 트랜잭션이 있는 상황에서 이 메서드를 새 트랜잭션으로 실행할 것인가, 아니면 기존 트랜잭션에 참여할 것인가”를 결정하는 설정하는 것이다. 트랜잭션 전파가 중요한 상황들주문 entity 저장 진행 중, 로그테이블에 기록해야 됨. -> 로그 저장 중 에러 발생한다고 비즈니스 로직을 롤백하면 안 됨서비스 내의..

최신글

[ AI ] 바이브 코딩/에이전틱 코딩 개발 방법론 - AI 모델간 planning 교차 검증
·
AI
효율적인 개발 프로세스를 고민하는 분들을 위해, Claude와 Gemini를 교차 활용하는 방식의 AI 에이전트 협업 워크플로우를 짧게 정리해 공유합니다. 단일 AI 모델에 의존하는 대신, 서로 다른 모델의 강점을 활용해 기획의 완성도를 높이는 것이 핵심입니다.사실 이런건 Codex가 잘한다고 하긴 하는데, 제가 OpenAI는 구독하고 있지 않아서 사용하지 않습니다.이 방법을 더 하드하게 하려면 Claude, Gemini, Codex, DeepSeek 등 여러개의 모델에게 각각 Planning 문서를 하나씩 쓰게하고, 고급 모델에게 최종 검토 및 취합을 맡기는 방법도 있습니다. 다만 토큰이 살살 녹는.. 단순히 제가 요즘 사용하는 방법을 공유합니다. Claude x Gemini: AI 하이브리드 개발 프..
[ Claude ] 클로드 코드 상세 세팅 알아보기
·
AI
AI Prompt Repohttps://github.com/HSRyuuu/AI-Practice-Archive GitHub - HSRyuuu/AI-Practice-Archive: AI 활용방안, 사례를 모아둔 repository 입니다.AI 활용방안, 사례를 모아둔 repository 입니다. Contribute to HSRyuuu/AI-Practice-Archive development by creating an account on GitHub.github.com .claudeClaude Code를 사용하다 보면 프로젝트 루트에 .claude 디렉터리가 생성되는 것을 볼 수있다.단순 설정파일이나 작업 공간으로 생각할 수 있지만, claude code를 단순 챗봇이 아니라 한명의 개발자로 사용할 수 있도록..
[ AI ] 클로드 스킬(Claude Skills, Agent Skill) 사용 방법, 커스텀해서 에이전트 만들기
·
AI
Agent Skills란?Agent Skills는 Claude의 기능을 확장하는 모듈입니다. 각 Skill은 지시사항, 메타데이터를 포함하고, 선택적으로 스크립트나 템플릿 같은 리소스를 패키징하여 Claude가 관련 작업을 수행할 때 자동으로 활용하게 할 수 있습니다.쉽게 말해, Skill은 새로운 claude 세션에게 줄 온보딩 가이드와 같습니다. 특정 도메인의 워크플로우, 컨텍스트, 베스트 프랙티스를 담아두면 Claude가 필요할 때 참조하여 도메인 전문가처럼 행동하게 됩니다.Skills를 사용하는 이유기존 프롬프트의 한계매번 대화할 때마다 같은 지침을 반복해서 입력하는 것은 비효율적입니다:Java 코드를 작성할 때는 Spring Boot 3.x 규칙을 따르고, Entity는 protected 기본 ..
Grafana k6 - 터미널에서 5분만에 도입하는 부하테스트
·
Infra & DevOps
이 글에서는 터미널에서 서버 성능 테스트를 아주 간편하게 할 수 있는 방안을 소개한다.작성자는 "k6 부하테스트"라는 단어를 처음 보고 나서 5분 내에 실제 부하테스트를 완료하고, 결과를 도출했다. Grafana k6k6는 Grafana Labs에서 운영하는 오픈소스 성능테스트 도구이다. 2017년에 처음 출시했고, 그라파나에서 지속적으로 업데이트 중인 프로젝트이다. 빠르게 적용해본 소감으로는 너무 쉽고 편하다. https://grafana.com/products/cloud/k6 Grafana Cloud k6 | Performance testing toolMinimum commit of $25,000 per year. Premium supportObservability ArchitectDeployment..
[Docker] 도커 볼륨 설정법 및 개념 정리 Docker Volume
·
Infra & DevOps
Docker Volume 도커로 컨테이너를 띄우면 독립적인 컴퓨터 환경을 구성하는 것과 같다.기본적으로 저장 공간도 마찬가지로, 외부와 공유되지 않는다. 컨테이너 내부 저장공간은 컨테이너 내부에서만 사용할 수 있다. 따라서 컨테이너를 삭제하면 컨테이너 내부 파일 시스템에 있던 데이터도 함께 사라진다. 컨테이너가 삭제되어도, 내부에 저장된 데이터가 삭제되면 안되는 경우에 볼륨(Volume)이라는 개념을 활용한다. 볼륨은 컨테이너 자체의 저장공간을 사용하지 않고, 호스트 컴퓨터의 저장공간을 공유해서 사용하는 형태이다. 이렇게 하면 컨테이너 삭제 여부와는 관련없이 호스트 컴퓨터의 저장공간에 데이터가 남아있기 때문에 데이터를 영속적으로 저장할 수 있다. 볼륨 설정 방법컨테이너 실행 시에 -v 옵션으로 호스트 P..

인기글

[ AI ] 클로드 스킬(Claude Skills, Agent Skill) 사용 방법, 커스텀해서 에이전트 만들기
·
AI
Agent Skills란?Agent Skills는 Claude의 기능을 확장하는 모듈입니다. 각 Skill은 지시사항, 메타데이터를 포함하고, 선택적으로 스크립트나 템플릿 같은 리소스를 패키징하여 Claude가 관련 작업을 수행할 때 자동으로 활용하게 할 수 있습니다.쉽게 말해, Skill은 새로운 claude 세션에게 줄 온보딩 가이드와 같습니다. 특정 도메인의 워크플로우, 컨텍스트, 베스트 프랙티스를 담아두면 Claude가 필요할 때 참조하여 도메인 전문가처럼 행동하게 됩니다.Skills를 사용하는 이유기존 프롬프트의 한계매번 대화할 때마다 같은 지침을 반복해서 입력하는 것은 비효율적입니다:Java 코드를 작성할 때는 Spring Boot 3.x 규칙을 따르고, Entity는 protected 기본 ..
[SonarQube] 오픈소스 정적분석 Tool 소나큐브 사용법
·
오픈소스 라이브러리
소나큐브란?소나큐브는 프로그래밍 언어에서 버그, 코드 스멜, 보안 취약점 등을 발견하기 위한 정적 코드 분석 툴이다. 설치 / 세팅1. 소나큐브 설치https://www.sonarsource.com/products/sonarqube/downloads/ Download | SonarQubeGet the latest LTS and version of SonarQube the leading product for Code Quality and Security from the official download page.www.sonarsource.com 2. 소나큐브 실행다운로드 파일 압축 풀기소나큐브 실행Window: /bin/windows-x86-64/StartSonar.bat 실행Linux: /bin/linu..
카카오 로그인 API 사용 방법 - 2025 ver (Java, Spring)
·
Spring
이 글은 과거(2023년 10월) 작성했던 글을 현재(2025년 12월)을 기준으로 리뉴얼 한 글이다.과거와 비교했을 때 달라진 점은 크게 없고, kakao에서 마이그레이션을 잘 해줘서 문제없지만, 사소하게 달라진 점들이 있다.예를들면 당시에는 사용자 email, 연령 등의 정보를 쉽게 얻을 수 있었는데, 지금은 비즈니스앱인증을 받아야 되는 등... 이런것들이 바뀌었다.2023.10.14 - [Spring] - [Spring] 카카오 로그인 API 사용 방법kakao developershttps://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해 보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다..
[Spring] 카카오 로그인 API 사용 방법
·
Spring
주의사항이 글은 2023년 10월에 작성된 글입니다.변경사항들이 조금 있어서, 새롭게 정리했습니다.아래 글을 참고하세요.카카오 로그인 API 사용 방법 - 2025 리뉴얼 ver (Java, Spring) 카카오 로그인 API 사용 방법 - 2025 리뉴얼 ver (Java, Spring)이 글은 과거(2023년 10월) 작성했던 글을 현재(2025년 12월)을 기준으로 리뉴얼 한 글이다.과거와 비교했을 때 달라진 점은 크게 없고, kakao에서 마이그레이션을 잘 해줘서 문제없지만, 사소하게 달innovation123.tistory.com Kakao Developers이미지 설명에 각 이미지 내용에 대한 위치(경로) 적어뒀으니 참고해 주세요. 1. KakaoDevelopers 접속https://deve..
[Java] JAVA_HOME 자바 환경변수 설정
·
Java
Java 프로젝트를 컴파일하려면 jdk가 필요하다.컴퓨터가 java를 컴파일 하기 위한 javac를 찾을 수 있도록 환경변수를 설정해서 jdk의 위치를 지정해줘야 한다.컴퓨터한테 jdk 위치를 알려주는 과정..간단하지만 알아두면 앞으로 자주 쓸 것 같아서 기록해 둔다.이 글은 2024년 10월 14일, Windows 11 버전을 사용하는 환경에서 작성했다.0. jdk 설치우선 jdk를 설치해야 한다.여기선 C:\dev_files\jdk\openjdk-1.8에 위치한다는 것을 가정하고 설명한다.1. 시스템 환경변수 검색해서 "시스템 환경변수 편집"으로 들어가도 되고,제어판 - 시스템 - 고급 시스템 설정(시스템 속성) - 환경변수로 들어가도 된다.2-1. 시스템 변수 설정중요한 것은 jdk 위치이다.그런데..
Spring AI로 RAG 챗봇 만들기 – Ollama, pgvector 부터 API 까지
·
AI
시작하기 전에, 이 글은 개념 정리는 없는 실습 글입니다.RAG 및 AI 개념에 대해 정리한 글이 있으니, 참고하세요.[Spring AI] Spring Boot에 LLM을 도입하기 전 꼭 알아야 할 RAG 개념 정리 [Spring AI] Spring Boot에 LLM을 도입하기 전 꼭 알아야 할 RAG 개념 정리이 글은 AI, RAG에 대해 기술적으로 전혀 모르는 상황에서 인앱 AI를 도입하기 위한 기본 개념을 정리합니다. 이 개념을 이해한 후에, 아래 Spring AI 실습 글을 보시길 바랍니다.(이 글에서 Spring AI는innovation123.tistory.com 특정 도메인의 정보를 LLM이 읽어서 챗봇처럼 대답해 주기 위한 기본 흐름은 아래와 같다.특정 도메인을 임베딩 하여 vector DB..
[Network] 방화벽 - 인바운드 & 아웃바운드 규칙이란?
·
Web & Network
방화벽이란?방화벽(Firewall)은 네트워크 보안 시스템이다. 미리 정의된 보안 규칙에 따라 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 장치 또는 소프트웨어이다. 불법 접근, 악의적 접근, 트래픽 낭비 등을 방지하기 위해 사용된다. 방화벽은 트래픽 필터링, 네트워크 세분화, 감시 및 로깅, 인증, 프라이버시 보호 등의 여러 가지 기능을 한다.이중 인바운드 규칙, 아웃바운드 규칙은 트래픽 필터링 기능에 포함된다. 트래픽 필터링(접근 제어)트래픽 필터링이란 방화벽이 네트워크를 통해 주고받는 데이터 패킷을 검사하고 제어하는 것을 말한다.방화벽이 허용한 트래픽만 네트워크로 들어오거나 나갈 수 있도록 한다.트래픽 필터링 방식 중 패킷 필터링 방식은 데이터 패킷의 헤더 정보를 분석하여 트래픽을 허용/..
[Linux/Unix] POSIX란? (포직스, 이식 가능 운영체제 인터페이스, Unix 표준)
·
Computer Science