lamp-cloud
[灯灯]微服务中后台快速开发平台,支持jdk21、jdk17、jdk8,专注于多租户、开放平台解决方案,亦可作为普通项目(非SaaS架构)的基础开发框架使用,目前已实现插拔式数据库隔离、SCHEMA隔离、字段隔离 等租户隔离方案。
Java backend framework for building multi-tenant SaaS platforms, with built-in tenant data isolation strategies, role-based permissions, a visual code generator, and Spring Cloud Alibaba integration.
lamp-cloud is a Java-based backend development framework aimed at teams building multi-tenant software-as-a-service platforms. A multi-tenant platform is one where many separate customers (tenants) share the same application, but each customer's data and access is kept strictly separate from the others. lamp-cloud gives developers a ready-made foundation for this, rather than requiring them to build all the isolation logic from scratch.
The framework supports several strategies for keeping tenant data separated. Depending on what level of isolation a project needs, it can put each tenant's data in a separate database, in a separate schema within one database, or use a column in shared tables to tag which tenant each row belongs to. This flexibility lets the same framework serve both small projects that want simple separation and larger platforms that need strict database-level boundaries.
Beyond multi-tenancy, the project includes a role-based permission system, a unified login gateway, form validation shared between front and back ends, a visual code generator that produces both backend and frontend code, file storage, email and SMS dispatch, distributed transactions, and scheduled jobs. It is built on the Spring Cloud Alibaba ecosystem, which is a set of Java tools popular in China for building distributed backend systems.
The project is organized as a family of related repositories rather than a single codebase. Core utilities live in lamp-util, scheduled job handling lives in lamp-job, and this repository (lamp-cloud) contains the main backend services. A separate front-end project called lamp-web provides the admin interface. The README is written in Chinese and links to a documentation website for setup instructions.
New users are directed to the java17/5.x branch, which is the only branch receiving new features. Older branches for Java 8 and earlier versions still receive bug fixes but no new development. The project is open source and described as suitable for both individual learning and as a starting framework for small-to-medium companies.
Where it fits
- Build a multi-tenant SaaS application where each customer gets their own isolated database, schema, or table partition without writing the isolation logic from scratch.
- Use the visual code generator to produce both backend API and frontend admin page code for a new feature automatically.
- Set up a unified login gateway and role-based access control system for an enterprise platform using the included permission module.
- Start a B2B software product on Java 17 using lamp-cloud as the foundation to skip months of boilerplate multi-tenancy work.