Java2EE Framework/정부표준

정부 표준 프레임워크 구성

본클라쓰 2010. 6. 11. 09:35

 

 전자 정부 표준 프레임워크는 기본 영역과 공통 기반 영역(AOP등 20여개의 컴포넌트)으로 구성되어 있으며 기본 영역은 다음과 같이 구성되어 있다.

  • 화면처리(UI)
  • 업무처리(비즈니스)
  • 데이터처리(퍼시스턴스)
  • 연계처리(웹서비스)

※ 전자 정부 표준 프레임워크의 기본 베이스는 spring 2.5 + ibatis 2.0

 

 

 

각 영역별 서비스 구조

  • 화면처리 : Ajax Support(Spring), Internation alization, MVC(Spring), Sercurity, UIAdaptor
  • 업무처리 : Process Control, Excetpion Handling
  • 데이터처리 : Data Access, DataSource, ORM, Transaction
  • 연계통합 : Integration Service, Naming Service, Web Service
  • 공통기반 : AOP, Cache, FileUpload/Download, main, String Util, FTP, marshling Unmarshalling, XML manipulation, Compress, Decompress, Server Security, Object pooling, Encrytion/Decryption, IoC Container, Property, Excel, File Handling, Loggin, Scheduling
     

 

1. 화면처리

 

업무처리 서비스와 사용자 간의 인터페이스를 담당하는 서비스로 사용자 화면 구성 및 사용자 입력 정보 검증 등의 기능을 지원

  • Ajax Support : Ajax 기능 지원을 위한 Custom Tag Library를 제공
  • Internationl alization : 서버 설정 및 클라이언트 브라우저 환경에 따라 자동화 된 다국어 기능을 제공
  • MVC : MVC 기반 구조를 제공
  • Security : 웹 응용 프로그램 작성 시 발생될 수 있는 웹 보안상의 취약점(XSS, SQL Injection)에 대응하기 위한 기능을 제공
  • UI Adapter : 화면 레이어 구현 방식에 따라 업무로직 레이어가 변경되는 것을 막기 위해, 업무 처리 영역에서 사용할 데이터 타입을 정의하고, 화면 레이어에서 사용하는 in/out parameter 를 해당 구현 방식에 맞게 변환해주는 기능을 제공

 

2. 업무처리

 

업무 프로그램의 업무 로직을 담당하는 서비스로 업무 흐름제어, 트랜잭션 관리, 에러 처리 등의 기능을 제공한다.

  • Process Control : 비즈니스 로직과 업무 흐름의 분리를 지원하며, XML 등의 외부 설정으로 업무흐름 구성을 제공하고, 미리 정의된 프로세스를 실행하는 기능을 제공
  • Exception Handling : 응용 프로그램의 수행 과정에서 발생하는 예외 사항(Exception)을 처리하기 위한 표준화 된 방법을 제공 

   

3. 연계통합

 

타 시스템과의 연동기능을 지원

  • Naming Service : 원격에 있는 모듈 및 자원 등을 찾아주는 기능
  • Web Service : 연계 등을 위하여 업무 서비스를 웹 서비스의 형태로 어플리케이션 외부에 노출시켜 타 시스템이나 어플리케이션에서 서비스를 이용할 수 있도록 하는 기능을 제공
  • Integration Service : 전자정부 시스템과의 연계를 위한 공통 인터페이스를 제공하여, 다양한 솔루션 연계 방식에 대한 표준 처리 방식을 제공 

  

4. 공통기반

 

실행환경 서비스 간에 공통적으로 사용되는 기능을 제공한다.

  • AOP : 관점 지향 프로그래밍 사상을 구현하고 지원
  • XML Manipulation : XML을 생성하고, 읽고, 쓰기 위한 기능을 제공한다.
  • Cache : 빈번히 사용되는 컨텐츠에 대해서는 빠른 접근을 가능하게 하는 기능으로 잦은 접근을 통한 오버헤드나 시간을 단축시키는 역할을 한다. 
  • Compress/Decompress : 데이터를 압축 및 복원하는 기능을 제공한다. 데이터를 효율적으로 저장 및 전송하기 위해 원본 데이터를 압축하거나 압축된 데이터를 복원하여 원본 데이터를 구하는데 사용될 수 있다. 
  • Encryption/Decryption : 데이터에 대한 암호화 및 복호화 기능을 제공하며, 네트워크를 통한 데이터 송수신시 보안을 목적으로 사용될 수 있다. 
  • Excel : 엑셀 파일 포맷을 다룰 수 잇는 자바 라이브러리를 제공한다. 
  • File Handling : File 생성 및 접근, 변경을 위해 File에 Access 할 수 잇는 기능을 제공한다.
  • File Upload/Download : 화면처리 서비스 그룹에서 사용되며, 파일을 업로드 및 다운로드 하기 위한 기능을 제공한다.
  • ID Generation : UUID(Universal Unique Identifier) 표준에 따라 시스템에서 사용하는 ID(Identifier)를 생성하는 기능을 제공한다.
  • IoC container : 프레임워크의 기본 기능인 Ioc 컨테이너 기능을 제공한다.
  • Loggin : System.out.println 문을 사용한 오버헤드를 줄이고, 간편한 설정을 통해 로그를 저장하고 통제할 수 있는 기능을 제공
  • Main : SMTP 표준을 준수하며 이메일을 송신할 수 있도록 이메일 클라이언트 기능을 제공한다.
  • Marshalling/Unmarshalling : 객체를 특정 데이터 형식으로 변환하고, 반대로 특정 데이터 형식으로 작성된 데이터를 객체로 변환하는 기능을 제공한다.
  • Object Pooling : Pool에 사용 가능한 객체가 있을 경우 객체를 할당 받거나, 없을 경우 Pool 크기에 따라 새로운 객체 생성 및 할당하는 기능을 제공한다.
  • Property : 외부 파일이나 환경 정보를 구성하는 키와 값의 쌍을 내부적으로 저장하고 있으며, 어플리케이션이 특정 키에 대한 값에 접근할 수 있도록 기능을 제공한다.
  • Resource : 국제화(Internationalization) 및 현지화(Localization)를 지원하기 위한 기능으로, 키값을 이용하여 국가 및 언어에 해당하는 메시지를 읽어오는 기능을 제공한다.
  • Scheduling : 어플리케이션 서버 내에서 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는 기능으로 유닉스의 크론 명령어와 유사한 기능을 제공한다.
  • Servce Security : 서버 함수 및 데이터 접근 시 보안 관리를 위해 사용자 인증 및 권한 관리 기능을 제공한다.
  • String Uitl : 문자열 데이터를 다루기 위한 다양한 기능을 제공한다.