백엔드 잘 모르는 프론트가 Spring Boot API 짠 이야기

HANUI·
Claude CodeAISpring Boot백엔드전자정부프레임워크자동화개발도구

Claude Code 시리즈 6편이에요. 5편에서 MCP로 노션·피그마를 연동했는데요.

오늘은 프론트엔드 개발자가 백엔드까지 혼자 구현한 이야기예요.

백엔드 잘 몰라요. 프론트엔드 개발자거든요. Spring이라고 하면 어노테이션 몇 개 아는 수준이고, MyBatis는 이름만 들어봤고, JWT 구현은 블로그 긁어서 붙여넣는 사람이에요.

근데 지금 hanui CMS 백엔드를 짜고 있어요. Spring Boot + 전자정부프레임워크 v5로.

생존 코딩같은 거지만, 그래도 꽤 괜찮은 결과물이 나오고 있어요.

전자정부프레임워크 v5가 뭐예요?

공공기관 프로젝트 들어가면 꼭 나오는 그 이름. 행정안전부에서 만든 Java 기반 프레임워크예요.

쉽게 말하면 공공기관 납품용 백엔드 블록 모음이에요.

HANUI가 UI 컴포넌트 블록 모음인 것처럼, 전자정부프레임워크는 백엔드 기능 블록 모음이에요.

v5의 강점

v4까지는 Spring 구버전 기반이었는데, v5에서 Spring Boot 3.x + Java 17로 올라왔어요.

보안 측면에서 특히 강해요:

  • 행안부에서 직접 검증한 보안 모듈 내장
  • XSS, SQL Injection 방어 필터 기본 탑재
  • 암호화 유틸 (AES, SHA 등) 기본 제공
  • 감사 로그(Audit Log) 블록 — 누가 언제 뭘 했는지 자동 기록
  • 취약점 업데이트 공식 지원

공공기관 입찰할 때 "전자정부프레임워크 적용"이 거의 필수 요건이에요. 쓸 수밖에 없기도 하지만, 막상 써보니까 CMS에 필요한 기능들이 거의 다 블록으로 있어요. 처음부터 만들 필요가 없어요.

블록 조합으로 CMS 구현

프론트에서 컴포넌트 조합하는 것처럼, 백엔드도 결국 블록 조합이에요.

hanui CMS 백엔드 스택:

게시판, 파일 업로드, 공통 코드 관리는 eGovFrame 블록 그대로 가져다 썼어요. 직접 짤 필요가 없어요.

실제로 이렇게 했어요

1. 노션 기획서 → DB 스키마

노션에 DB 설계가 다 되어있었어요. 테이블, 컬럼, 관계 전부요.

저는 SQL을 잘 몰라도 기획서만 써놓으면 됐어요.

2. API 명세 → 코드

API 명세도 노션에 있었어요.

3. 모르는 거 나오면 바로 스터디

이게 진짜 좋았어요. 모르는 코드가 나오면 바로 물어봤어요.

Stack Overflow 긁어다 붙여넣는 것보다 이해가 훨씬 잘 돼요. 단순히 구현만 하는 게 아니라 왜 이렇게 되는지를 대화하면서 배우니까요.

이런 식으로 하다 보니까 Spring 흐름을 알게 됐어요.

전자정부프레임워크 v5는 필요한 블록이 다 있어요. 보안, 인증, 게시판, 파일 업로드 — 공공 CMS에 필요한 것들이 이미 검증된 형태로 들어있어요. 저는 어떤 블록을 어디에 붙일지 설계만 하고, 구현은 Claude Code랑 같이 했어요.


claude-settings에 백엔드 커맨드도 있어요 (/api, /db, /migrate):


Claude Code 시리즈:

관련 프로젝트:

  • claude-settings — Claude Code 슬래시 커맨드, 에이전트, 훅 설정 모음
  • HANUI — KRDS 기반 React 디자인 시스템

HANUI

KRDS 기반 React 컴포넌트 라이브러리. 공공 웹 개발을 더 쉽게.