📌 전자정부프레임워크의 전체 구조

이 구조는 MVC 패턴을 기반으로 하며, 공공기관 프로젝트의 표준 개발 방식으로 많이 사용돼요.

전자정부프레임워크는 크게 다음과 같은 4개 계층으로 구성되어 있습니다:

 

전자정부프레임워크 구조 다이어그램

┌──────────────────────────────────────┐
│            Presentation Layer        │
│        ────────────────────────      │
│        • Controller (Spring MVC)     │
│        • JSP / Tiles / HTML / JS     │
└──────────────────────────────────────┘
                  │
                  ▼
┌──────────────────────────────────────┐
│             Business Layer           │
│        ────────────────────────      │
│        • Service (Spring)            │
│        • 트랜잭션 처리 (AOP)         │
└──────────────────────────────────────┘
                  │
                  ▼
┌──────────────────────────────────────┐
│          Persistence Layer           │
│        ────────────────────────      │
│        • DAO (MyBatis)               │
│        • SQL Mapper / JDBC           │
└──────────────────────────────────────┘
                  │
                  ▼
┌──────────────────────────────────────┐
│               Database               │
│        ────────────────────────      │
│        • Oracle / MySQL / PostgreSQL │
└──────────────────────────────────────┘

🔁 **공통 컴포넌트 (Integration Layer)**는 위 모든 계층에서 필요 시 참조됩니다.

공통 기능 (통합 계층)
 ─────────────────────
 • 로그인/권한관리
 • 공통코드
 • 로깅(Log4j)
 • 암호화(Security)
 • 메시지처리
 • 에러 처리 등

 

 


1. Presentation Layer (표현 계층)

  • 사용자 인터페이스(UI) 처리 담당
  • Spring Framework 기반의 Controller, View(JSP, Tiles 등)를 구성
  • 주요 기술:
    • Spring MVC
    • Tiles, JSP, HTML, JavaScript

2. Business Layer (업무 계층)

  • 비즈니스 로직을 처리하는 계층
  • Controller와 DAO 사이의 로직 구현
  • 주요 기술:
    • Spring Framework (Service, AOP 등)
    • 이 계층에서 트랜잭션 처리도 수행

3. Persistence Layer (데이터 처리 계층)

  • DB와의 연결 및 데이터 처리 담당
  • SQL 실행 및 결과 매핑
  • 주요 기술:
    • MyBatis (구 iBatis)
    • JDBC, DataSource
    • Spring JDBC 지원

4. Integration Layer (통합 계층)

  • 공통 기능을 모듈화하여 제공하는 계층
  • 주요 기능:
    • 공통 컴포넌트 (예: 로그인, 권한, 공통코드 등)
    • 보안, 암호화, 로깅, 에러 처리 등

🧩 주요 구성 요소 및 특징

구성 요소 설명

Spring Framework 전반적인 구조와 의존성 주입, 트랜잭션 관리 등을 담당
MyBatis SQL 매핑 프레임워크로, 데이터베이스 접근에 사용
Tiles 화면 레이아웃 재사용을 위한 템플릿 기술
EgovComponent 공통 컴포넌트 모음 (공통코드, 로그인 등)
로그 시스템 Log4j 등 연동 가능
보안 기능 인증, 인가, 암호화 모듈 제공

🧱 아키텍처 다이어그램 (텍스트 버전 예시)

[사용자]
   |
[Controller (Spring MVC)]
   |
[Service (비즈니스 로직)]
   |
[DAO (MyBatis)]
   |
[DB (Oracle, MySQL 등)]

공통 모듈: 로깅, 보안, 암호화, 공통코드 등은 전체 계층에서 사용

📝 요약

  • 목표: 공공기관 시스템 개발의 표준화, 생산성 향상, 유지보수 용이
  • 기술 스택: Spring Framework + MyBatis + JSP/Tiles + 공통 컴포넌트
  • 장점: 공통 모듈 제공, 오픈소스 기반, 유지보수 효율

 

+ Recent posts