개요

온라인 서비스는 OLTP(클라이언트에서 받은 메시지를 해석하고 그에 따라서 처리한 후 그 결과를 되돌려 주는 방법)를 위한 서버 사이드 프로그램을 말한다.

1. 용어 정의

아래는 어플리케이션 작성을 위한 프레임워크 용어 정의이다.

용어
용어 설명

어플리케이션(Application)

  • 사용자의 요청을 처리하기 위한 프로그램의 집합으로 데이터 액세스와 처리를 위해 작성된 SQL, 비즈니스 로직 구현을 위한 클래스, 설정파일들을 포함하여 구성된다.

  • 어플리케이션은 Eclipse의 BX 클라우드 프로젝트로 작성된다.

  • 본 프로젝트의 업무 개발자는 별도로 어플리케이션을 생성하지 않고 이미 작성되어 있는 Git Repositor에 제공된 어플리케이션을 Clone하여 사용한다.

  • 외부에서 식별하기 위해 시스템 내에서 유일한 이름을 가진다.

Controller

  • Rest Client(사용자 화면, 대내외채널 등 외부에서 호출된 사용자 요청)의 요청에 대응되는 클래스이다.

  • HTTP 클라이언트 요청을 처리(HTTP 의존적인 영역을 처리)힌다.

  • 트랜잭션 처리 단위의 기준이 된다.

  • 비즈니스 로직을 처리하기 위해 Service를 호출한다.

  • Component와 DBIO는 직접 처리하지 는다.

서비스(Service)

  • Controller와 1:1 로 매핑되는 클래스이다

  • Controller에서 호출되는 단위의 기능을 Service의 메소드로 구현한다.

Component

  • 업무 기능 중 공통적으로 사용 할 수 있는 기능을 추상화하여 제공하는 클래스이다.

  • 재사용이 가능한 업무 단위라고 볼 수 있다.

DBIO

  • 데이터 액세스를 위해 작성하는 개발 리소스로 자바 Interface와 SQL Mapper(.dbio)파일로 구성된다.

  • 개발도구에서 DBIO를 생성하여 개발한다.

  • SQL은 DBIO에서 Query ID를 추가하여 작성한다.

IO

  • 메시지(JSON, 고정길이 데이터, XML 등) 형태로 변환할 수 있는 기능을 제공하는 프레임워크 표준 데이터 전달 객체로 오퍼레이션 요청/응답, 대내외계 인터페이스, 비즈니스 호출 등에 사용된다.

  • 모든 DTO(Data Transfer Object)는 IO로 관리된다.

아래는 어플리케이션 작성을 위한 프로젝트 일반 용어 정의로, 주로 git 과 관련된 설명을 다루고 있다.

프로젝트 관련 일반 용어
구분 설명

어노테이션(Annotation)

작성된 프로그램 소스가 실행환경에서 특별한 동작을 하도록 지정하거나 개발된 소스들을 효과적으로 관리하기 위해 클래스의 선언부, 메소드, 변수, 파라미터 등에 부여하는 메타데이터 문자열이다.

git clone

Git 저장소를 복제하는 Command이다. 원격 저장소(remote repository)에 있는 프로젝트의 모든 파일과 버전 히스토리를 Local로 가져올 수 있다.

git pull

Git에서 최신 변경 사항을 가져와서 병합하는 데 사용되는 Command 이다. 이를 통해 여러 사용자가 협업하는 프로젝트에서 서로의 작업을 동기화할 수 있다.

git add

Git에서 변경된 파일을 스테이징 영역에 추가하는 Command 이다. 이를 통해 Git은 커밋할 준비가 된 파일을 추적하고 저장할 수 있게 된다.

git commit / push

개발자가 수정한 소스와 기타 리소스 파일들의 변경사항을 git에 push 하여 현재 상태의 최신 버전에 반영하는 행위이다.

2. 어노테이션 요약

어노테이션은 JAVA메타 언어로 소스 상에 표기하는 것만으로 런타임에 어떤 기능을 수행하도록 하거나 클래스로부터 어떤 정보를 추출할 수 있도록 한다.

어노테이션 요약
구분 설명 표기위치

@RestController

@Controller

Controller클래스로 기능함

Controller 클래스 선언부

@RequestMapping

Controller의 URL 경로 매핑 정보

Controller 클래스 / public 메소드 선언부

@GetMapping

HTTP GET 요청 매핑 정보

Controller public 메소드 선언부

@PostMapping

HTTP GET 요청 매핑 정보

Controller public 메소드 선언부

@Service

Service 클래스로 기능함

Service 클래스 선언부

@Component

Component 클래스로 기능함

Component 클래스 선언부

@BxmDataAccess

DBIO로 기능함

DBIO 인터페이스 선언부 (자동 생성)

@BxmCategory

논리명 입력

Controller 클래스 선언부

Controller 클래스 public 메소드 선언부

Service 클래스 선언부

Service 클래스 public 메소드 선언부

Component 클래스 선언부

Component 클래스 public 메소드 선언부

DBIO 인터페이스 선언부 (자동 생성)

DBIO 인터페이스 메소드 선언부 (자동 생성)

@Autowired

Bean 자동 주입.

Controller, Service, Component 의 멤버변수 선언 위치

마이크로 서비스를 개발 한다면 @Autoworied를 사용하면 문제가 없을 것으로 보이나, 기존 모놀로식 환경 처럼 거대 어플리케이션을 구축 하는 시스템이라면 getBean()을 이용하여 처리하는 것을 권장한다.

@Transactional

Transaction을 처리할 때 사용 (Transaction 분리 시 사용)

Transaction을 처리할 메소드 선언부

SWLab Bankware Global
  • 전체
  • BXM
  • BXCM
  • BXCP
  • BXI
제품 선택 시 더 정확한 매뉴얼 가이드를 제공해드립니다.

Copyright© Bankwareglobal All Rights Reserved.