대상 파일 (target)
YAML 의 엔티티 하나(PurchaseOrder)에서 파일이 여러 개 만들어집니다. 파일 종류마다 이름이 있고, 그 이름이
target 입니다. 규칙은 @Rule(target = "...") 으로 어느 파일에 기여할지 정합니다. 적지 않으면 entity 입니다.
어떤 파일이 어떤 target 인지는 생성 로그 각 줄의 첫 단어입니다:
dto src/main/java/io/elasticore/sample/petstore/application/dto/CustomerDTO.java WROTE
srchdto src/main/java/io/elasticore/sample/petstore/application/dto/CustomerSrchDTO.java WROTE
YAML 파일과 target, 그리고 메서드 모양
| YAML | 만들어지는 파일 | target | 규칙 메서드 | 규칙이 읽는 것 |
|---|---|---|---|---|
entity.yml | Customer.java | entity (기본) | (EntitySpec e), (EntitySpec e, FieldSpec f) | 엔티티, 필드 |
entity.yml, dto.yml | CustomerDTO.java, ItemDTO.java | dto | (EntitySpec dto, FieldSpec f) | DTO 이름, 필드 |
필드의 @search(...) | CustomerSrchDTO.java | srchdto | (EntitySpec s, FieldSpec f) | 검색 필드 |
repository.yml | PurchaseOrderRepository.java | repository | (EntitySpec e) | e.queries() |
port.yml | CreditCheckPort.java | port | (PortSpec p) | p.operations() |
enum.yml | OrderStatus.java | enum | (EnumSpec en) | en.constants() |
dto.yml 의 DTO 도 EntitySpec 으로 받습니다. 엔티티와 같은 방법으로 이름과 필드를 읽습니다.