You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xit-ntri/REF/deploy/ntri/README.md

6.2 KiB

시작하기


세외수입개별시스템(Non-Tax Revenue Individual System) 은
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며,
API 4종의 데이터는 세외수입시스템측에서 제공 한다.

  • 출발지: 세외수입시스템
  • 목적지: 개별시스템(ntri)

버전관리

버전 작성일 작성자 내용
v0.1 2022.12.20 박민규 최초작성
v0.2 2022.12.21 박민규 "2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -> 실행파일(.bat) )
v0.2 2022.12.21 박민규 %NTRI_APP_HOME%/bin/setenv.bat 파일의 "DB/SSL설정" 수정VM옵션" 환경변수 추가
v0.3 2022.12.22 박민규 연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)
v0.3.1 2022.12.23 박민규 "1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가
v0.3.2 2022.12.27 박민규 "부록-실행 환경"의 JDBC 수정(ojdbc8.jar -> ojdbc6.jar). 사유: 일부 서버에서 Java.sql.SQLRecoverableException 발생
v0.3.3 2022.12.27 박민규 문서내용 수정. "부록-실행 환경" 삭제. "부록-구현 스펙" 추가
v0.4 2022.12.27 박민규 연계표준지침(v1.2.1 -> v1.?.?) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json). reqVo 필드타입 수정(단건 -> 다건)
v0.4.1 2022.12.29 박민규 curl프로그램 변경 및 프로그램 위치 변경(%NTRI_APP_HOME% -> %NTRI_APP_HOME%/bin/test). "부록-디렉토리 구성"에서 내용 삭제
v1.0 2023.01.02 박민규 연계대상코드(linkTrgtCd) 설정 추가. (어플리케이션 수정 및 setenv.bat 환경변수 NTRI_APP_LINKTRGTCD 추가)

1. 배포하기

  1. 원하는 경로에 ntri.zip 압축파일을 unzip 한다.

    • [원하는 경로]/ntri -> %NTRI_APP_HOME%
  2. %NTRI_APP_HOME%/bin/setenv.bat 파일을 열어 배포환경에 맞게 환경변수를 수정 한다.

    ※JDK 설치 확인 방법: cmd 창에서 java -version 입력
    ※JAVA_HOME 설정 확인 방법: 시스템 -> 정보 -> 고급 시스템 설정 -> 환경 변수(N)... -> 시스템 변수(S)

  3. %NTRI_APP_HOME%/bin/service-regist.bat 파일을 "관리자권한" 으로 실행

  4. %NTRI_APP_HOME%/webapp 디렉토리에 "ntri-0.0.1-SNAPSHOT.jar" 파일 복사

  5. %NTRI_APP_HOME%/bin/service-start.bat 파일을 실행하여 "서비스 시작"

    • 서비스 실행 오류가 발생할 경우 %NTRI_APP_HOME%/logs/stderr.log 내용 확인
  6. %NTRI_APP_HOME%/bin/service-logprint.bat 파일을 실행하여 "서비스 실시간 로그" 확인

2. SSL 인증서 발급

  1. OpenSSL 다운로드
    • openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip
  2. 다운로드한 압축파일을 unzip 후 OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사
  3. %NTRI_APP_HOME%/ssl/bin 디렉토리의 "generate-ssl-cert-new.bat" 파일 실행
    [ 파일 설명 ]
    • 신규 발급: generate-ssl-cert-new.bat
      • 인증서파일 모두 발급(key, csr, crt)
    • 재발급: generate-ssl-cert-refresh.bat
      • 인증서파일 일부만 발급(csr, crt)
  4. %NTRI_APP_HOME%/ssl/cert 디렉토리에 인증서파일(key,csr,crt) 이 생성되었는지 확인

3. API 테스트

  1. "~/bin/test" 디렉토리로 이동
  2. 테스트 배치파일(.bat) 실행하여 API 호출
    • 일괄: curl-all.bat
    • 부과취소: curl-LevyCancel.bat
    • 부과결과: curl-LevyResult.bat
    • 수납정보: curl-RcivInfo.bat
    • 감액정보: curl-RdcamtInfo.bat

부록


디렉토리 구성

Directory Description
%NTRI_APP_HOME%/webapp 어플리케이션 jar 파일이 위치한 디렉토리
%NTRI_APP_HOME%/bin 서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리
%NTRI_APP_HOME%/bin/test API 테스트 배치파일(.bat)이 위치한 디렉토리
%NTRI_APP_HOME%/bin/logs 어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)
%NTRI_APP_HOME%/logs 어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)
%NTRI_APP_HOME%/ssl/bin SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리
%NTRI_APP_HOME%/ssl/cert 발급된 SSL 인증서가 저장되는 디렉토리
%NTRI_APP_HOME%/ssl/cert/backup SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리

파일 설명

File Name Description
setenv.bat 환경변수 설정
service-regist.bat 서비스 등록
service-edit.bat 등록한 서비스정보 수정
service-delete.bat 등록한 서비스 삭제
service-start.bat 등록한 서비스 실행
service-stop.bat 등록한 서비스 중지
service-status.bat 등록한 서비스 실행 상태 확인
service-logprint.bat 등록한 서비스 실시간 로그 출력
startup.bat 서버 기동
shutdown.bat 서버 종료
logprint.bat 실시간 로그 출력

구현 스펙

  • Back-End
    • SpringBoot 2.7.5
    • Tomcat 9.0.68
    • JDK11
    • gradle
    • JPA
  • DB
    • Oracle 11g
    • mariaDB 10.6.5
    • mysql
  • JDBC Libray
    • ojdbc6.jar
    • mariadb-java-client-2.7.5.jar
    • mysql-connector-java-8.0.30.jar