feat: add operations configuration and DDD base types

master
chenyuan 4 weeks ago
parent bfde528aa7
commit dd3633c6b2

@ -0,0 +1,5 @@
# 数字人民币教学仿真后端
Java 17 / Spring Boot 4.1 / MySQL 8 / MyBatis-Plus DDD 脚手架。
设置 `DIGITAL_RMB_DB_URL`、`DIGITAL_RMB_DB_USERNAME`、`DIGITAL_RMB_DB_PASSWORD`、`DIGITAL_RMB_JWT_SECRET`(至少 64 字符)、`DIGITAL_RMB_BOOTSTRAP_ADMIN_USERNAME`、`DIGITAL_RMB_BOOTSTRAP_ADMIN_PASSWORD` 后运行 `mvn spring-boot:run`。测试使用内存 H2`mvn test`。

@ -0,0 +1,4 @@
package com.yau.digitalrmb.issuance.domain.model;
import java.util.Objects;
import java.util.UUID;
public record IssuanceApplicationId(UUID value) { public IssuanceApplicationId { Objects.requireNonNull(value, "value must not be null"); } }

@ -0,0 +1,16 @@
package com.yau.digitalrmb.shared.config;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.security.SecurityScheme;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class OpenApiConfig {
@Bean
OpenAPI openAPI() {
return new OpenAPI().info(new Info().title("数字人民币教学仿真后端").version("0.1.0"))
.schemaRequirement("bearerAuth", new SecurityScheme().type(SecurityScheme.Type.HTTP).scheme("bearer").bearerFormat("JWT"));
}
}

@ -0,0 +1,4 @@
package com.yau.digitalrmb.shared.domain;
import java.time.Instant;
import java.util.UUID;
public interface DomainEvent { UUID eventId(); Instant occurredAt(); }

@ -16,3 +16,11 @@ security:
bootstrap-admin:
username: ${DIGITAL_RMB_BOOTSTRAP_ADMIN_USERNAME}
password: ${DIGITAL_RMB_BOOTSTRAP_ADMIN_PASSWORD}
management:
endpoints:
web:
exposure:
include: health,info
springdoc:
swagger-ui:
enabled: false

Loading…
Cancel
Save