프로젝트 소개

AirPower4J는 AirPowerTeam이 유지 관리하는 백엔드 개발 스캐폴드로, Java17, Spring Boot 3.x, JPA 및 MySQL을 기반으로 구축되었으며 일상적인 엔터프라이즈급 백엔드의 빠른 표준화 개발을 목표로 합니다. 핵심 모듈에는 RBAC 권한, 요청 파라미터 검증, CURD 캡슐화, 통합 예외 처리, 멀티테넌트 SaaS 지원, 암복호화 및 보안, WebSocket이 포함됩니다. 프로젝트는 Controller Service Repository 표준 계층 구조를 채택하고, 원칙적으로 Entity를 데이터 구조로 사용하여 EO VO DTO 변환을 줄입니다. 일련의 개발 애노테이션을 제공합니다: Api는 REST 컨트롤러 표시, Description은 오류 및 검증 문구, Desensitize와 DesensitizeIgnore는 필드 마스킹, Export는 내보내기 열 구성, ReadOnly는 속성 수정 제한, Extends는 메서드 상속 제어, Search는 정확 또는 모호 검색 지원, Dictionary는 열거형 사전 연결에 사용됩니다. 열거형 사전은 IDictionary 인터페이스를 구현하여 자동 번역을 지원해야 합니다. 데이터 모델은 API 상호작용에 참여하려면 RootModel을 상속해야 하며, 영속화 엔티티는 RootEntity를 상속합니다. 컨트롤러는 ApiController를 상속해야 하며, 데이터 관련 컨트롤러는 CurdController를 상속하고 CurdService 및 ICurdRepository와 함께 표준 CRUD를 구현할 수 있습니다. 사용자 정의 예외는 IException 인터페이스를 구현합니다. ITree를 구현한 클래스는 TreeUtil을 사용하여 표준 트리 구조를 구축할 수 있습니다. 시스템 구성은 application-xxx.yml 아래 airpower 접두사 환경 변수를 통해 주입됩니다. 유틸리티 클래스는 cn.hamm.airpower.core에 집중되어 있으며 Utils.getXXX를 통해 얻을 수 있습니다. 데이터베이스 초기화는 JPA ddl-auto create-drop을 사용하며, utf8mb4_0900_ai_ci 문자 집합 데이터베이스를 수동으로 생성해야 하고 프로덕션 환경에서는 사용을 권장하지 않습니다. 의존성은 Maven 부모 POM cn.hamm:airpower를 통해 도입되며, 핵심 의존성은 airpower-core입니다. 프로젝트는 @airpower/web Vue3 TypeScript ElementPlus Vite 프런트엔드 스캐폴드와 함께 풀스택 개발을 구현할 수도 있습니다. 문제 피드백은 GitHub Gitee Issue 또는 QQ 그룹 555156313을 통해 가능합니다.