# lihengming/spring-boot-api-project-seed

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/lihengming-spring-boot-api-project-seed).**

9,704 stars · 3,732 forks · Java

## Links

- GitHub: https://github.com/lihengming/spring-boot-api-project-seed
- awesome-repositories: https://awesome-repositories.com/repository/lihengming-spring-boot-api-project-seed.md

## Topics

`api` `java` `mapper` `mybatis` `mybatis-pagehelper` `rest` `restful` `seed` `spring-boot`

## Description

This project is a Spring Boot API starter kit and RESTful project skeleton designed for building backend services. It provides a foundational codebase that implements a layered service architecture and standardized directory structures to organize controllers, services, and data mappers.

The project features a MyBatis CRUD boilerplate generator that automates the creation of models and controllers from database tables using customizable templates. It includes a security framework for protecting endpoints via interface signature authentication to verify user identity and request authorization.

The system ensures consistency across network requests through unified result wrapping, standardized API response formatting, and a centralized global exception handler for interception-based error management. It further simplifies data persistence through generic CRUD operations and database connection pooling.

## Tags

### Web Development

- [REST API Backends](https://awesome-repositories.com/f/web-development/rest-api-backends.md) — Provides a complete Spring Boot and MyBatis skeleton for building RESTful API backends.
- [Spring Boot Starter Kits](https://awesome-repositories.com/f/web-development/spring-boot-starter-kits.md) — Ships a comprehensive project template for rapidly building RESTful APIs using Spring Boot and MyBatis.
- [Exception Handling](https://awesome-repositories.com/f/web-development/exception-handling.md) — Implements a centralized interceptor to map application exceptions to structured API responses. ([source](https://github.com/lihengming/spring-boot-api-project-seed#readme))
- [Global Error Handlers](https://awesome-repositories.com/f/web-development/global-error-handlers.md) — Includes a centralized global exception handler to return standardized error responses to clients.
- [Response Structure Standardization](https://awesome-repositories.com/f/web-development/rest-apis/api-response-validation/response-structure-standardization.md) — Implements consistent data structures for all API success and error responses. ([source](https://github.com/lihengming/spring-boot-api-project-seed#readme))

### Data & Databases

- [CRUD Operations](https://awesome-repositories.com/f/data-databases/crud-operations.md) — Provides a persistence framework with generic mappers and pagination for standard table operations. ([source](https://github.com/lihengming/spring-boot-api-project-seed#readme))
- [Data Access Layers](https://awesome-repositories.com/f/data-databases/data-access-layers.md) — Manages data retrieval and CRUD operations through automated mappers and connection pooling.
- [Common Operation Mappers](https://awesome-repositories.com/f/data-databases/data-mapping-engines/common-operation-mappers.md) — Provides a base mapper class to automate repetitive CRUD operations across different entities.

### Development Tools & Productivity

- [Project Skeleton Definitions](https://awesome-repositories.com/f/development-tools-productivity/project-skeleton-definitions.md) — Provides a reusable directory structure and configuration pattern to bootstrap new RESTful API projects.
- [Data Access Layer Generators](https://awesome-repositories.com/f/development-tools-productivity/api-code-generators/data-access-layer-generators.md) — Automates the creation of data access layers to reduce manual coding for database operations. ([source](https://github.com/lihengming/spring-boot-api-project-seed/blob/master/pom.xml))
- [Boilerplate Automators](https://awesome-repositories.com/f/development-tools-productivity/boilerplate-automators.md) — Quickly generates controllers, services, and data mappers from database tables.
- [Boilerplate Generators](https://awesome-repositories.com/f/development-tools-productivity/code-generators/boilerplate-generators.md) — Provides a utility to scaffold models, mappers, services, and controllers from database tables. ([source](https://github.com/lihengming/spring-boot-api-project-seed/blob/master/README.md))
- [Template-Based Code Generators](https://awesome-repositories.com/f/development-tools-productivity/template-based-code-generators.md) — Uses customizable text templates to generate repetitive model and controller files from database schemas.

### Security & Cryptography

- [API Request Authentication](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/machine-and-protocol-identity/api-machine-authentication/api-request-authentication.md) — Secures backend endpoints by verifying user identities and request signatures.
- [Request Signature Frameworks](https://awesome-repositories.com/f/security-cryptography/identity-authentication/identity-based-authentication/request-signature-frameworks.md) — Provides a security framework for verifying user identity through interface signing mechanisms.
- [Request Signing](https://awesome-repositories.com/f/security-cryptography/identity-authentication/user-identity-verification/hmac-user-identity-verifications/request-signing.md) — Secures endpoints by verifying cryptographic signatures attached to network requests.
- [Request Signature Verification](https://awesome-repositories.com/f/security-cryptography/authentication-and-authorization/request-signature-verification.md) — Implements a security framework that protects endpoints by verifying cryptographic signatures attached to requests. ([source](https://github.com/lihengming/spring-boot-api-project-seed#readme))

### Software Engineering & Architecture

- [Service Layers](https://awesome-repositories.com/f/software-engineering-architecture/core-business-logic/service-layers.md) — Organizes logic into distinct controller, service, and mapper tiers to separate concerns.

### Programming Languages & Runtimes

- [API Response Wrappers](https://awesome-repositories.com/f/programming-languages-runtimes/native-object-wrapping/api-response-wrappers.md) — Encapsulates every API response within a consistent object structure to standardize the data format.
