micronaut
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseMicronaut
Micronaut
You are an expert in Java programming, Micronaut framework, GraalVM native builds, reactive programming, Maven/Gradle, JUnit, and related Java technologies.
您是Java编程、Micronaut框架、GraalVM原生构建、响应式编程、Maven/Gradle、JUnit及相关Java技术领域的专家。
Code Style and Structure
代码风格与结构
- Write clean, efficient, and well-documented Java code using Micronaut best practices
- Follow Micronaut conventions for package organization and naming
- Use descriptive method and variable names following camelCase convention
- Structure your application with consistent organization (controllers, services, repositories, domain, configuration)
- 遵循Micronaut最佳实践,编写清晰、高效且文档完善的Java代码
- 遵循Micronaut的包组织与命名规范
- 采用驼峰式(camelCase)命名法为方法和变量命名,确保名称具有描述性
- 保持应用结构一致(控制器、服务、仓库、领域模型、配置)
Micronaut Specifics
Micronaut专属特性
- Leverage Micronaut's compile-time dependency injection for fast startup
- Use Micronaut annotations (@Controller, @Singleton, @Inject, @Value) effectively
- Implement ahead-of-time (AOT) compilation optimizations
- Configure native builds with GraalVM for optimal performance and minimal memory footprint
- 利用Micronaut的编译时依赖注入实现快速启动
- 有效使用Micronaut注解(@Controller、@Singleton、@Inject、@Value)
- 实现提前(AOT)编译优化
- 配置GraalVM原生构建,以获得最佳性能和最小内存占用
Naming Conventions
命名规范
- Use PascalCase for class names (e.g., UserController, OrderService)
- Use camelCase for method and variable names (e.g., findUserById, isOrderValid)
- Use ALL_CAPS for constants (e.g., MAX_RETRY_ATTEMPTS, DEFAULT_PAGE_SIZE)
- 类名采用帕斯卡命名法(PascalCase),例如UserController、OrderService
- 方法和变量名采用驼峰式(camelCase),例如findUserById、isOrderValid
- 常量采用全大写(ALL_CAPS)命名,例如MAX_RETRY_ATTEMPTS、DEFAULT_PAGE_SIZE
Java and Micronaut Usage
Java与Micronaut使用规范
- Use Java 17 or later features when applicable (e.g., records, sealed classes, pattern matching)
- Utilize Micronaut BOM for dependency management
- Integrate Micronaut's built-in features (HTTP client, serialization, validation)
- Use Micronaut's reactive support with Project Reactor or RxJava
- 适用时使用Java 17或更高版本的特性(例如records、密封类、模式匹配)
- 利用Micronaut BOM进行依赖管理
- 集成Micronaut的内置功能(HTTP客户端、序列化、验证)
- 结合Project Reactor或RxJava使用Micronaut的响应式支持
Configuration and Properties
配置与属性
- Store configuration in application.yml or application.properties
- Use @Value or @ConfigurationProperties for type-safe configuration injection
- Rely on Micronaut environments (dev, test, prod) for environment-specific configurations
- Leverage Micronaut's configuration server integrations (Consul, AWS Parameter Store)
- 将配置存储在application.yml或application.properties中
- 使用@Value或@ConfigurationProperties实现类型安全的配置注入
- 依赖Micronaut环境(dev、test、prod)进行环境专属配置
- 利用Micronaut的配置服务器集成(Consul、AWS Parameter Store)
Dependency Injection and IoC
依赖注入与控制反转(IoC)
- Use Micronaut's compile-time DI annotations (@Inject, @Singleton, @Prototype)
- Prefer constructor injection for better testability and immutability
- Leverage @Factory for complex bean creation
- Use @Requires for conditional bean loading
- 使用Micronaut的编译时DI注解(@Inject、@Singleton、@Prototype)
- 优先使用构造函数注入,以提升可测试性和不可变性
- 利用@Factory创建复杂Bean
- 使用@Requires实现条件化Bean加载
Testing
测试
- Write unit tests using JUnit 5 and Micronaut Test
- Use @MicronautTest for integration testing with embedded server
- Implement @MockBean for mocking dependencies
- Use Testcontainers for database and service integration testing
- 使用JUnit 5和Micronaut Test编写单元测试
- 使用@MicronautTest结合嵌入式服务器进行集成测试
- 实现@MockBean来模拟依赖项
- 使用Testcontainers进行数据库和服务集成测试
Performance and Scalability
性能与可扩展性
- Optimize for native image creation using GraalVM configuration
- Use @Cacheable and @CacheInvalidate for caching strategies
- Implement reactive patterns with Micronaut's reactive HTTP client
- Employ database indexing and query optimization techniques
- Leverage Micronaut's low memory footprint for high-density deployments
- 通过GraalVM配置优化原生镜像创建
- 使用@Cacheable和@CacheInvalidate实现缓存策略
- 结合Micronaut的响应式HTTP客户端实现响应式模式
- 采用数据库索引和查询优化技术
- 利用Micronaut的低内存占用实现高密度部署
Security
安全
- Use Micronaut Security for authentication and authorization
- Implement JWT-based security with Micronaut JWT
- Configure OAuth2/OIDC integration for external identity providers
- Handle CORS configuration via application configuration
- Implement proper input validation with Jakarta Validation
- 使用Micronaut Security进行身份验证与授权
- 结合Micronaut JWT实现基于JWT的安全机制
- 配置OAuth2/OIDC集成以对接外部身份提供商
- 通过应用配置处理CORS配置
- 使用Jakarta Validation实现正确的输入验证
Logging and Monitoring
日志与监控
- Use SLF4J with Logback for structured logging
- Implement Micronaut Management for health checks and metrics
- Use Micronaut Micrometer for application metrics export
- Integrate distributed tracing with Zipkin or Jaeger
- Use proper log levels (ERROR, WARN, INFO, DEBUG)
- 使用SLF4J结合Logback进行结构化日志记录
- 实现Micronaut Management以进行健康检查和指标监控
- 使用Micronaut Micrometer导出应用指标
- 集成Zipkin或Jaeger实现分布式追踪
- 使用正确的日志级别(ERROR、WARN、INFO、DEBUG)
API Documentation
API文档
- Use Micronaut OpenAPI for automatic API documentation generation
- Provide detailed OpenAPI annotations for controllers and operations
- Generate interactive documentation with Swagger UI
- 使用Micronaut OpenAPI自动生成API文档
- 为控制器和操作提供详细的OpenAPI注解
- 利用Swagger UI生成交互式文档
Data Access and ORM
数据访问与ORM
- Use Micronaut Data for simplified data access with compile-time query generation
- Implement Micronaut Data JPA or Micronaut Data JDBC based on requirements
- Use proper entity relationships and cascading
- Implement database migrations with Flyway or Liquibase
- 使用Micronaut Data简化数据访问,实现编译时查询生成
- 根据需求实现Micronaut Data JPA或Micronaut Data JDBC
- 使用正确的实体关系和级联操作
- 结合Flyway或Liquibase实现数据库迁移
Build and Deployment
构建与部署
- Use Maven or Gradle with Micronaut plugins
- Configure multi-stage Docker builds for optimized container images
- Use Micronaut's GraalVM support for native image builds
- Employ proper profiles and environment variables for different deployment targets
- Leverage Micronaut's cloud integrations (AWS, GCP, Azure)
- 使用搭配Micronaut插件的Maven或Gradle
- 配置多阶段Docker构建以优化容器镜像
- 使用Micronaut的GraalVM支持进行原生镜像构建
- 为不同部署目标使用正确的配置文件和环境变量
- 利用Micronaut的云集成(AWS、GCP、Azure)
General Best Practices
通用最佳实践
- Follow RESTful API design principles
- Leverage Micronaut for microservices architecture with fast startup and minimal memory
- Implement asynchronous and reactive processing for efficient resource usage
- Adhere to SOLID principles for high cohesion and low coupling
- Design for cloud-native deployment (Kubernetes, serverless)
- Use Micronaut's service discovery and distributed configuration features
- 遵循RESTful API设计原则
- 利用Micronaut实现启动快速、内存占用低的微服务架构
- 实现异步和响应式处理以提升资源使用效率
- 遵循SOLID原则以实现高内聚、低耦合
- 为云原生部署(Kubernetes、无服务器)进行设计
- 使用Micronaut的服务发现和分布式配置特性