doc: 배포파일 버전관리 위해 zip -> 디렉토리로 커밋

dev
minkyu1128 2 years ago
parent 7e747c674f
commit 5313812031

Binary file not shown.

@ -0,0 +1,112 @@
# 시작하기
***
세외수입개별시스템(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 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark>|
|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). "부록-디렉토리 구성"에서 내용 삭제|
## 1. 배포하기
1. **원하는 경로에 ntri.zip 압축파일을 unzip** 한다.
* [원하는 경로]/ntri -> **<mark>%NTRI_APP_HOME%</mark>**
2. *%NTRI_APP_HOME%/bin/setenv.bat* 파일을 열어 **배포환경에 맞게 환경변수를 수정** 한다.
* NTRI_JAVA_HOME 및 SSL/DB 설정 등..
**\[ NTRI_JAVA_HOME 설정 참고 \]**
* PC에 JDK가 설치(install)된 경우
* JDK버전이 11 이상이면 -> %JAVA_HOME% 작성
* JDK버전이 11 미만이면 -> [JDK11(Amazon Corretto) 다운로드(.zip)](https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html) 및 Unzip 한 path 작성
* PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
* [JDK11(Amazon Corretto) 다운로드(.zip)](https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html) 및 Unzip 한 path 작성
* [JDK11(Amazon Corretto) 다운로드(.msi)](https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html) 및 Install 후 %JAVA_HOME% 작성
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 `java -version` 입력
<mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -> 정보 -> 고급 시스템 설정 -> 환경 변수(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 다운로드](https://sourceforge.net/projects/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

@ -0,0 +1,202 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</li>
<li>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.
<ul><li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></li>
<li>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"
<ul><li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>OpenSSL 다운로드(<a href="https://sourceforge.net/projects/openssl">https://sourceforge.net/projects/openssl</a>)
<ul><li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li></ul></li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 이동</strong></li>
<li>
<strong>관리자 권한</strong>으로 cmd창 열기</li>
<li>cd 커맨드로 <em>C:\OpenSSL\bin</em> 디렉토리로 이동</li>
</ol>
<pre>
<code class="language-PowerShell">cd C:\Openssl\bin
</code>
</pre>
<ol start="5">
<li>인증서 발급 커맨드 실행</li>
</ol>
<pre>
<code class="language-PowerShell">openssl req -config ./openssl.cnf -x509 -sha256 -nodes -newkey rsa:2048 -keyout private.key -out public.pem -days 3650
-&gt; 커맨드 종료시까지 엔터키(Enter) 입력
openssl pkcs12 -export -inKey private.key -in public.pem -name alias_name -out certificate.p12
-&gt; 인증서 패스워드 `xit5811807` 입력
※ openssl.cnf 관련 오류 발생 시 openssl.cnf 파일을 C:/OpenSSL 밑으로 복사
</code>
</pre>
<ol start="6">
<li>생성된 <em>certificate.p12</em> 파일을 <strong>"%NTRI_APP_HOME%/ssl/cert" 디렉토리로 복사</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat) 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl</td>
<td>SSL 인증 관련 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">실행 환경</h3>
<ul>
<li>Java 버전: JDK11 이상</li>
<li>Tomcat 버전: Tomcat9 이상</li>
<li>JDBC: ojdbc8.jar</li>
</ul>
</body>
</html>

@ -0,0 +1,204 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</li>
<li>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.
<ul><li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></li>
<li>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"
<ul><li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>OpenSSL 다운로드(<a href="https://sourceforge.net/projects/openssl">https://sourceforge.net/projects/openssl</a>)
<ul><li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li></ul></li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">실행 환경</h3>
<ul>
<li>Java 버전: JDK11 이상</li>
<li>Tomcat 버전: Tomcat9 이상</li>
<li>JDBC: ojdbc8.jar</li>
</ul>
</body>
</html>

@ -0,0 +1,243 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
<tr>
<td>v0.3.1</td>
<td>2022.12.23</td>
<td>박민규</td>
<td>"1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<p>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</p>
<ul>
<li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.</p>
<ul>
<li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..<br /><strong>[ NTRI_JAVA_HOME 설정 참고 ]</strong><ul><li>PC에 JDK가 설치(install)된 경우
<ul><li>JDK버전이 11 이상이면 -&gt; %JAVA_HOME% 작성</li><li>JDK버전이 11 미만이면 -&gt; <a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li></ul></li><li>PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
<ul><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.msi)</a> 및 Install 후 %JAVA_HOME% 작성</li></ul></li></ul></li>
</ul>
<p>
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 <code>java -version</code> 입력<br /><mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -&gt; 정보 -&gt; 고급 시스템 설정 -&gt; 환경 변수(N)... -&gt; 시스템 변수(S)</p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"</p>
<ul>
<li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</p>
</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>
<a href="https://sourceforge.net/projects/openssl">OpenSSL 다운로드</a>
<ul>
<li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li>
</ul>
</li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">실행 환경</h3>
<ul>
<li>Java 버전: JDK11 이상</li>
<li>Tomcat 버전: Tomcat9 이상</li>
<li>JDBC: ojdbc8.jar, mariadb-java-client-2.7.5.jar, mysql-connector-java-8.0.30.jar</li>
</ul>
</body>
</html>

@ -0,0 +1,249 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
<tr>
<td>v0.3.1</td>
<td>2022.12.23</td>
<td>박민규</td>
<td>"1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가</td>
</tr>
<tr>
<td>v0.3.2</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>"부록-실행 환경"의 JDBC 수정(ojdbc8.jar -&gt; ojdbc6.jar). 사유: 일부 서버에서 Java.sql.SQLRecoverableException 발생</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<p>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</p>
<ul>
<li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.</p>
<ul>
<li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..<br /><strong>[ NTRI_JAVA_HOME 설정 참고 ]</strong><ul><li>PC에 JDK가 설치(install)된 경우
<ul><li>JDK버전이 11 이상이면 -&gt; %JAVA_HOME% 작성</li><li>JDK버전이 11 미만이면 -&gt; <a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li></ul></li><li>PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
<ul><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.msi)</a> 및 Install 후 %JAVA_HOME% 작성</li></ul></li></ul></li>
</ul>
<p>
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 <code>java -version</code> 입력<br /><mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -&gt; 정보 -&gt; 고급 시스템 설정 -&gt; 환경 변수(N)... -&gt; 시스템 변수(S)</p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"</p>
<ul>
<li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</p>
</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>
<a href="https://sourceforge.net/projects/openssl">OpenSSL 다운로드</a>
<ul>
<li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li>
</ul>
</li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">실행 환경</h3>
<ul>
<li>Java 버전: JDK11 이상</li>
<li>Tomcat 버전: Tomcat9 이상</li>
<li>JDBC: ojdbc6.jar, mariadb-java-client-2.7.5.jar, mysql-connector-java-8.0.30.jar</li>
</ul>
</body>
</html>

@ -0,0 +1,258 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
<tr>
<td>v0.3.1</td>
<td>2022.12.23</td>
<td>박민규</td>
<td>"1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가</td>
</tr>
<tr>
<td>v0.3.2</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>"부록-실행 환경"의 JDBC 수정(ojdbc8.jar -&gt; ojdbc6.jar). 사유: 일부 서버에서 Java.sql.SQLRecoverableException 발생</td>
</tr>
<tr>
<td>v0.3.3</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>문서내용 수정. "부록-실행 환경" <code>삭제</code>. "부록-구현 스펙" <code>추가</code></td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<p>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</p>
<ul>
<li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.</p>
<ul>
<li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..<br /><strong>[ NTRI_JAVA_HOME 설정 참고 ]</strong><ul><li>PC에 JDK가 설치(install)된 경우
<ul><li>JDK버전이 11 이상이면 -&gt; %JAVA_HOME% 작성</li><li>JDK버전이 11 미만이면 -&gt; <a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li></ul></li><li>PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
<ul><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.msi)</a> 및 Install 후 %JAVA_HOME% 작성</li></ul></li></ul></li>
</ul>
<p>
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 <code>java -version</code> 입력<br /><mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -&gt; 정보 -&gt; 고급 시스템 설정 -&gt; 환경 변수(N)... -&gt; 시스템 변수(S)</p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"</p>
<ul>
<li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</p>
</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>
<a href="https://sourceforge.net/projects/openssl">OpenSSL 다운로드</a>
<ul>
<li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li>
</ul>
</li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">구현 스펙</h3>
<ul>
<li>Back-End
<ul><li>SpringBoot 2.7.5</li><li>Tomcat 9.0.68</li><li>JDK11</li><li>gradle</li><li>JPA</li></ul></li>
<li>DB
<ul><li>Oracle 11g</li><li>mariaDB 10.6.5</li><li>mysql</li></ul></li>
<li>JDBC Libray
<ul><li>ojdbc6.jar</li><li>mariadb-java-client-2.7.5.jar</li><li>mysql-connector-java-8.0.30.jar</li></ul></li>
</ul>
</body>
</html>

@ -0,0 +1,211 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.
<ul><li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.
<ul><li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></li>
<li>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"
<ul><li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li></ul></li>
<li>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>OpenSSL 다운로드(<a href="https://sourceforge.net/projects/openssl">https://sourceforge.net/projects/openssl</a>)
<ul><li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li></ul></li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">실행 환경</h3>
<ul>
<li>Java 버전: JDK11 이상</li>
<li>Tomcat 버전: Tomcat9 이상</li>
<li>JDBC: ojdbc8.jar</li>
</ul>
</body>
</html>

@ -0,0 +1,266 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
<tr>
<td>v0.3.1</td>
<td>2022.12.23</td>
<td>박민규</td>
<td>"1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가</td>
</tr>
<tr>
<td>v0.3.2</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>"부록-실행 환경"의 JDBC 수정(ojdbc8.jar -&gt; ojdbc6.jar). 사유: 일부 서버에서 Java.sql.SQLRecoverableException 발생</td>
</tr>
<tr>
<td>v0.3.3</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>문서내용 수정. "부록-실행 환경" <code>삭제</code>. "부록-구현 스펙" <code>추가</code></td>
</tr>
<tr>
<td>v0.4</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1 -&gt; v1.?.?) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json). reqVo 필드타입 수정(단건 -&gt; 다건)</td>
</tr>
<tr>
<td>v0.4.1</td>
<td>2022.12.29</td>
<td>박민규</td>
<td>curl프로그램 변경 및 프로그램 위치 변경(%NTRI_APP_HOME% -&gt; %NTRI_APP_HOME%/bin/test). "부록-디렉토리 구성"에서 내용 삭제</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<p>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</p>
<ul>
<li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.</p>
<ul>
<li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..<br /><strong>[ NTRI_JAVA_HOME 설정 참고 ]</strong><ul><li>PC에 JDK가 설치(install)된 경우
<ul><li>JDK버전이 11 이상이면 -&gt; %JAVA_HOME% 작성</li><li>JDK버전이 11 미만이면 -&gt; <a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li></ul></li><li>PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
<ul><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.msi)</a> 및 Install 후 %JAVA_HOME% 작성</li></ul></li></ul></li>
</ul>
<p>
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 <code>java -version</code> 입력<br /><mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -&gt; 정보 -&gt; 고급 시스템 설정 -&gt; 환경 변수(N)... -&gt; 시스템 변수(S)</p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"</p>
<ul>
<li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</p>
</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>
<a href="https://sourceforge.net/projects/openssl">OpenSSL 다운로드</a>
<ul>
<li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li>
</ul>
</li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">구현 스펙</h3>
<ul>
<li>Back-End
<ul><li>SpringBoot 2.7.5</li><li>Tomcat 9.0.68</li><li>JDK11</li><li>gradle</li><li>JPA</li></ul></li>
<li>DB
<ul><li>Oracle 11g</li><li>mariaDB 10.6.5</li><li>mysql</li></ul></li>
<li>JDBC Libray
<ul><li>ojdbc6.jar</li><li>mariadb-java-client-2.7.5.jar</li><li>mysql-connector-java-8.0.30.jar</li></ul></li>
</ul>
</body>
</html>

@ -0,0 +1,264 @@
<!DOCTYPE html []>
<html>
<head>
<meta charset="UTF-8" />
<meta name="author" content="MarkdownViewer++" />
<title>README.md</title>
<style type="text/css">
/* Avoid page breaks inside the most common attributes, especially for exports (i.e. PDF) */
td, h1, h2, h3, h4, h5, p, ul, ol, li {
page-break-inside: avoid;
}
</style>
</head>
<body>
<h1 id="section">시작하기</h1>
<hr />
<p>세외수입개별시스템(Non-Tax Revenue Individual System) 은 <br />
과태료 부과에 대한 실시간 API 4종(부과결과/부과취소/수납정보/감액정보)을 지원 하며, <br />
API 4종의 데이터는 세외수입시스템측에서 제공 한다.</p>
<ul>
<li>출발지: 세외수입시스템</li>
<li>목적지: 개별시스템(ntri)</li>
</ul>
<h3 id="section-1">버전관리</h3>
<table>
<thead>
<tr>
<th>버전</th>
<th>작성일</th>
<th>작성자</th>
<th>내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>v0.1</td>
<td>2022.12.20</td>
<td>박민규</td>
<td>최초작성</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>"2. SSL 인증서 발급" 내용 수정( 발급방식 변경: 스크립트 -&gt; 실행파일(.bat) )</td>
</tr>
<tr>
<td>v0.2</td>
<td>2022.12.21</td>
<td>박민규</td>
<td>%NTRI_APP_HOME%/bin/setenv.bat 파일의 <mark>"DB/SSL설정" 수정</mark><mark>VM옵션" 환경변수 추가</mark></td>
</tr>
<tr>
<td>v0.3</td>
<td>2022.12.22</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json)</td>
</tr>
<tr>
<td>v0.3.1</td>
<td>2022.12.23</td>
<td>박민규</td>
<td>"1. 배포하기"에 NTRI_JAVA_HOME 설정에 대한 내용 추가 및 실행 환경 JDBC 내용추가</td>
</tr>
<tr>
<td>v0.3.2</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>"부록-실행 환경"의 JDBC 수정(ojdbc8.jar -&gt; ojdbc6.jar). 사유: 일부 서버에서 Java.sql.SQLRecoverableException 발생</td>
</tr>
<tr>
<td>v0.3.3</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>문서내용 수정. "부록-실행 환경" <code>삭제</code>. "부록-구현 스펙" <code>추가</code></td>
</tr>
<tr>
<td>v0.4</td>
<td>2022.12.27</td>
<td>박민규</td>
<td>연계표준지침(v1.2.1 -&gt; v1.?.?) 전문구조 변경에 의한 "API 테스트" 데이터 수정(%NTRI_APP_HOME%/bin/test/*.json). reqVo 필드타입 수정(단건 -&gt; 다건)</td>
</tr>
</tbody>
</table>
<h2 id="section-2">1. 배포하기</h2>
<ol>
<li>
<p>
<strong>원하는 경로에 ntri.zip 압축파일을 unzip</strong> 한다.</p>
<ul>
<li>[원하는 경로]/ntri -&gt; <strong><mark>%NTRI_APP_HOME%</mark></strong></li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/setenv.bat</em> 파일을 열어 <strong>배포환경에 맞게 환경변수를 수정</strong> 한다.</p>
<ul>
<li>NTRI_JAVA_HOME 및 SSL/DB 설정 등..<br /><strong>[ NTRI_JAVA_HOME 설정 참고 ]</strong><ul><li>PC에 JDK가 설치(install)된 경우
<ul><li>JDK버전이 11 이상이면 -&gt; %JAVA_HOME% 작성</li><li>JDK버전이 11 미만이면 -&gt; <a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li></ul></li><li>PC에 JDK가 미설치(no install)된 경우(unzip 또는 install 中 택1)
<ul><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.zip)</a> 및 Unzip 한 path 작성</li><li><a href="https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-11-ug/downloads-list.html">JDK11(Amazon Corretto) 다운로드(.msi)</a> 및 Install 후 %JAVA_HOME% 작성</li></ul></li></ul></li>
</ul>
<p>
<mark>※JDK 설치 확인 방법:</mark> cmd 창에서 <code>java -version</code> 입력<br /><mark>※JAVA_HOME 설정 확인 방법:</mark> 시스템 -&gt; 정보 -&gt; 고급 시스템 설정 -&gt; 환경 변수(N)... -&gt; 시스템 변수(S)</p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-regist.bat</em> 파일을 <strong>"관리자권한" 으로 실행</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/webapp</em> 디렉토리에 <strong>"ntri-0.0.1-SNAPSHOT.jar" 파일 복사</strong></p>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-start.bat</em> 파일을 실행하여 "서비스 시작"</p>
<ul>
<li>서비스 실행 오류가 발생할 경우 <em>%NTRI_APP_HOME%/logs/stderr.log</em> 내용 확인</li>
</ul>
</li>
<li>
<p>
<em>%NTRI_APP_HOME%/bin/service-logprint.bat</em> 파일을 실행하여 "서비스 실시간 로그" 확인</p>
</li>
</ol>
<h2 id="ssl">2. SSL 인증서 발급</h2>
<ol>
<li>
<a href="https://sourceforge.net/projects/openssl">OpenSSL 다운로드</a>
<ul>
<li>openssl-1.0.2j-fips-x86_64/openssl-1.0.2j-fips-x86_64.zip</li>
</ul>
</li>
<li>다운로드한 압축파일을 unzip 후 <strong>OpenSSL 디렉토리를 C드라이브(C:/) 밑으로 복사</strong></li>
<li>
<em>%NTRI_APP_HOME%/ssl/bin</em> 디렉토리의 <strong>"generate-ssl-cert-new.bat" 파일 실행</strong><br /><strong>[ 파일 설명 ]</strong><ul><li>신규 발급: <em>generate-ssl-cert-new.bat</em><ul><li>인증서파일 <code>모두</code> 발급(key, csr, crt)</li></ul></li><li>재발급: <em>generate-ssl-cert-refresh.bat</em><ul><li>인증서파일 <code>일부</code>만 발급(csr, crt)</li></ul></li></ul></li>
<li>
<em>%NTRI_APP_HOME%/ssl/cert</em> 디렉토리에 <strong>인증서파일(key,csr,crt) 이 생성</strong>되었는지 <strong>확인</strong></li>
</ol>
<h2 id="api">3. API 테스트</h2>
<ol>
<li>
<strong>"~/bin/test"</strong> 디렉토리로 이동</li>
<li>테스트 배치파일(.bat) 실행하여 API 호출
<ul><li>일괄: <em>curl-all.bat</em></li><li>부과취소: <em>curl-LevyCancel.bat</em></li><li>부과결과: <em>curl-LevyResult.bat</em></li><li>수납정보: <em>curl-RcivInfo.bat</em></li><li>감액정보: <em>curl-RdcamtInfo.bat</em></li></ul></li>
</ol>
<h1 id="section-3">부록</h1>
<hr />
<h3 id="section-4">디렉토리 구성</h3>
<table>
<thead>
<tr>
<th>Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>%NTRI_APP_HOME%/webapp</td>
<td>어플리케이션 jar 파일이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin</td>
<td>서버기동과 관련한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/test</td>
<td>API 테스트 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/bin/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(startup.bat 직접 호출 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/logs</td>
<td>어플리케이션 로그파일(.log)이 저장되는 디렉토리(윈도우 서비스 사용 시)</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/bin</td>
<td>SSL 인증서 신규/재발급을 위한 배치파일(.bat)이 위치한 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert</td>
<td>발급된 SSL 인증서가 저장되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/ssl/cert/backup</td>
<td>SSL 인증서 신규/재발급 시마다 발급된 인증서가 백업되는 디렉토리</td>
</tr>
<tr>
<td>%NTRI_APP_HOME%/curl-7.86.0_2-win64-mingw</td>
<td>curl 커맨드를 사용하기 위한 실행프로그램</td>
</tr>
</tbody>
</table>
<h3 id="section-5">파일 설명</h3>
<table>
<thead>
<tr>
<th>File Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>setenv.bat</td>
<td>
<code>환경변수</code> 설정</td>
</tr>
<tr>
<td>service-regist.bat</td>
<td>서비스 <code>등록</code></td>
</tr>
<tr>
<td>service-edit.bat</td>
<td>등록한 서비스정보 <code>수정</code></td>
</tr>
<tr>
<td>service-delete.bat</td>
<td>등록한 서비스 <code>삭제</code></td>
</tr>
<tr>
<td>service-start.bat</td>
<td>등록한 서비스 <code>실행</code></td>
</tr>
<tr>
<td>service-stop.bat</td>
<td>등록한 서비스 <code>중지</code></td>
</tr>
<tr>
<td>service-status.bat</td>
<td>등록한 서비스 실행 <code>상태</code> 확인</td>
</tr>
<tr>
<td>service-logprint.bat</td>
<td>등록한 서비스 <code>실시간 로그</code> 출력</td>
</tr>
<tr>
<td>startup.bat</td>
<td>서버 <code>기동</code></td>
</tr>
<tr>
<td>shutdown.bat</td>
<td>서버 <code>종료</code></td>
</tr>
<tr>
<td>logprint.bat</td>
<td>
<code>실시간 로그</code> 출력</td>
</tr>
</tbody>
</table>
<h3 id="section-6">구현 스펙</h3>
<ul>
<li>Back-End
<ul><li>SpringBoot 2.7.5</li><li>Tomcat 9.0.68</li><li>JDK11</li><li>gradle</li><li>JPA</li></ul></li>
<li>DB
<ul><li>Oracle 11g</li><li>mariaDB 10.6.5</li><li>mysql</li></ul></li>
<li>JDBC Libray
<ul><li>ojdbc6.jar</li><li>mariadb-java-client-2.7.5.jar</li><li>mysql-connector-java-8.0.30.jar</li></ul></li>
</ul>
</body>
</html>
Loading…
Cancel
Save