-
프로파일 버저닝
- 로컬:
local
- 개발:
dev
- 스테이징:
stg
- 실:
prod
- 로컬:
-
스웨거:
/swagger-ui/index.html
-
헬스체크:
/actuator/health
- 이커머스
- 결제, 구매 주체
- 객체 데이터
- 구매 묶음
- 로그성 데이터
- 포인트 일대일 선택 매핑
- 구매는 음수 포인트 paid
- 결제는 양수 포인트
- 로그성 데이터
- 구매 재화
- 누적성 데이터 (증감 요소)
- 상품 정보
- 마스터 데이터
- 단일 상품 정보
- 구매와 일대일 매핑 가능
- 객체 데이터
- 레이어드 아키텍처
- controller
- biz
- base
- 리소스와 연결되는 베이스 비즈니스
- biz1
- 순환 참조를 방지하기 위해, biz는 반드시 더 작은 숫자의 biz만을 DI 받는다.
- biz2
- base
- dto
- orgin
- 순수 dto로써, entity와 일대일 매핑된다.
- request
- 요청 dto로써, 컨트롤러에서 들어오거나, 요청에 쓰인다.
- view
- 조합을 위한 dto
- orgin
- orm
- entity
- repository
curl -X 'GET' \
'http://localhost:8078/order/all/1' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": [
{
"id": 0,
"userId": 0,
"state": "Start"
}
]
}
}
curl -X 'POST' \
'http://localhost:8078/order/purchase' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"userId": 1,
"requestPurchaseList": [
{
"productId": 1,
"count": 10
},
{
"productId": 2,
"count": 2
}
]
}'
{
"result": {
"result": "OK",
"value": {
"id": 1,
"userId": 1,
"state": "OK"
}
}
}
curl -X 'POST' \
'http://localhost:8078/pay/exchange' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"userId": 1,
"toNeed": 1000
}'
{
"result": {
"result": "OK",
"value": {
"id": 1,
"into": 1000,
"userId": 1
}
}
}
curl -X 'GET' \
'http://localhost:8078/point/squash' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": [
{
"id": 0,
"count": 0,
"userId": 0,
"fromType": 0,
"fromId": 0
}
]
}
}
curl -X 'GET' \
'http://localhost:8078/point/squash/{userId}' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": {
"id": 0,
"count": 0,
"userId": 0,
"fromType": 0,
"fromId": 0
}
}
}
curl -X 'GET' \
'http://localhost:8078/point/remain/{userId}' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": 0
}
}
curl -X 'GET' \
'http://localhost:8078/point/history/{userId}' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": [
{
"id": 0,
"count": 0,
"userId": 0,
"fromType": 0,
"fromId": 0
}
]
}
}
curl -X 'GET' \
'http://localhost:8078/product/all' \
-H 'accept: application/json'
{
"result": {
"result": "Ok",
"value": [
{
"id": 0,
"name": "string",
"price": 0
}
]
}
}
curl -X 'POST' \
'http://localhost:8078/product/' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"id": 0,
"name": "string",
"price": 0
}'
{
"result": {
"result": "Start",
"value": {
"id": 0,
"name": "string",
"price": 0
}
}
}
curl -X 'GET' \
'http://localhost:8078/purchase/favorite/11' \
-H 'accept: application/json'
{
"result": {
"result": "Start",
"value": [
{
"id": 0,
"name": "string",
"price": 0,
"paidCnt": 0,
"orderByPaidCnt": 0
}
]
}
}
curl -X 'GET' \
'http://localhost:8078/user/all' \
-H 'accept: application/json'
{
"result": {
"result": "Start",
"value": [
{
"id": 0,
"name": "string"
}
]
}
}