5강. 공통기반레이어 AOP, ID Generation, Logging

공통기반 레이어


AOP

로깅 각 세션마다 필요한 로깅을 생성해야 하는 경우 ->
중복적인 소스를 관점(하나의 파일로 ) 두고 간단한 로직만 담겠다

  • Join Point : 메소드 실행하는 구간의 시점, -> 위치 지정
  • Pointcut : 주가 되는 클래스
  • 에스팩트(Aspact) : Advicd+ Pointcut
  • Advice : 주가되는 클레스를 빼낸 콛
  • Weaving : 이런 역활을 위한 방식 (파일-파일 분리 => 나중에 결합시키는 방식)
    => 떼어낸 Advice를 엮어주는 것 : Join Poin

  • 중복된 파일 위치 지정 - Join Point

  • 삽입된 중복 코드를 모은것 - Advice
    => Transaction

  • 주가되는 것은 묶음으로 걸러 낼 수 있음

  • 주요개념 :

    • Weaving방식

      • 컴파일 시 엮기
      • 클래스 로딩 시 엮기
      • 런타임 시 엮기 : 표준 프로그램에서 사용-> Spring AOP사용
    • Advice 결합점 결합 타입

      • Before advice : 설정된 거 궁금하면
      • After returning advice : 결과 값이 궁금할 때
      • After throwing advice: 기본 예외가 발생할 때
      • After advice
  • 주요기능

    	- 횡단 관심 - 모듈 삽입-> 여러개의 포인트 컷 지정해서 사용하는 법 
    • 포인트 것 그룹지어 지정
  • 장점

    • 중복 제거
    • 비즈니스 로직 가독성 향상
    • 생산성 향상
    • 재사용성 향상
  • 사용하는 것

    - 어노테이션을 이용한 aop구현
    - xml, schema를 이용한 aop구현 


    pointcut : 주가 되는 모든 클래스
    aspect : 클래스 실행되면 aspect실행해줘
    after(== final) : 무조건 실행하는 부분
    around : before+after의 조합 -> 처음에 한번 실행 -> 문제 없으면 다시 실행

ID Generation

  • 공통 컨포넌트 내에 사용되는 기본값
    ID Generation -> 설정 정보 가져옴
    -> 업무에서 할당

  • 주요기능

    • UUID(Universal Unique Identifier) : 특정값을 가지고 값을 뽑아내는 방식
      1. Mac Address Base Service
      2. IP Address Base Service
      3. No Address Base Service- 랜덤
      4. Sequence ID사용하는 방식
    • Sequence ID생성
      • Sequence ID 생성
        • Table ID 생성 : 특정 테이블에서 어떤 테이블 지정 -> 사용할 테이블 선택

Logging

  • 기본기능
  • 각종 시스템 정보 수집하는 기능
  • Log4j
    - Logger : 구간에 찍는 로고 설정
    • Appender : 출력장소, 형태 (날짜 , 위치)
    • Layout : 시간 분 초
  • 로그레벨 지정하기
    - Error > Warn > Info > Debug > Trace
    로그레벨설명
    Error요청 처리 중 문제 발생
    Warn처리 가능한 문제지만, 향후 시스템 에러의 원인이 될 수 있는 경고성 메시지
    Info로그인, 상태변경과 같은 정보성 메시지
    Debug개발시 디버그 용도로 사용할 메시지
    Trace디버그 레벨이 너무 광범위한 것을 해결하기 위해 좀 더 상세한 상태를 나타냄

Appender
- ConsoleAppender
- FileAppender
- RollingFileAppender
- JDBCAppender

출처 : https://www.egovframe.go.kr/home/sub.do?menuNo=66

좋은 웹페이지 즐겨찾기