Skip to content

Guide · Open source

How to use zheng: clone, build and explore its Java modules

Updated · written with AI from the project's own documentation and checked against our catalogue data

zheng is an open-source Java project from shuzheng that bundles many server-side modules built on Spring, Spring MVC and MyBatis. It is meant as a starting point for business web systems, such as permissions and single sign-on, content management, a payment center and file storage. This guide explains what it contains, how to get the code and build it with Maven, and who it suits.

zhengshuzheng/zheng · ★ 16.6k · MIT

Quick start

  1. 1Confirm Java and Maven are installed. The README lists Java and Maven as prerequisites for the clone-and-build method. Install both before you work with the code.
  2. 2Clone the repository. Run git clone https://github.com/shuzheng/zheng in your chosen folder to download the source.
  3. 3Read the module layout. Open the organisation tree in the README and pick the subsystems you actually need, such as zheng-upms for permissions.
  4. 4Build with Maven. Build the project with Maven. The README does not give a specific build command, so consult the repository files for the exact steps.
  5. 5Configure and run the modules you need. Set up each module you selected and note the ports listed in the README so that services do not clash.

What zheng is and what it contains

zheng describes itself as a distributed, agile development architecture on Spring, Spring MVC and MyBatis. It offers a set of common microservice modules, aimed at small and medium-sized businesses building enterprise J2EE applications.

The repository is organised as a multi-module project. The main areas listed in its layout are a user permission system (zheng-upms), a content management system (zheng-cms), a payment system (zheng-pay), a user center with third-party login (zheng-ucenter), a WeChat system (zheng-wechat), an API gateway (zheng-api), object storage (zheng-oss) and a real-time notification system (zheng-message).

  • zheng-upms: RBAC-based permissions, single sign-on, session management and log management
  • zheng-cms: content management with search, admin, job and web sub-modules
  • zheng-pay: payment system with an admin module and an SDK
  • zheng-ucenter: user system including third-party login
  • zheng-wechat: WeChat official account management and a mini-program backend
  • zheng-oss: file storage, offered in four storage options according to the README
  • zheng-config: configuration center
  • zheng-admin: a shared Bootstrap-based admin template

Check the prerequisites before you start

The README lists two prerequisites for the clone-and-build install method: Java and Maven. It does not state specific Java or Maven versions, so check the repository for those details before you begin.

Because zheng is a large multi-service suite, expect to work with many modules rather than a single library. The README gives port numbers for several modules, which you will need to avoid conflicts when you run more than one.

  • Java
  • Maven

Get the code with git clone

The README's only install command is a git clone of the repository. Run it in the directory where you want the project folder to live. This downloads the full multi-module source tree.

git clone https://github.com/shuzheng/zheng

Understand the module layout before you build

Most of zheng's value sits in its layout. Each subsystem is split into parts such as common, dao, rpc-api, rpc-service, sdk and a web or admin front end. The README notes that the dao modules are code-generation modules that need no hand-written development.

Read the organisation tree in the README first and decide which subsystem you need. Taking only the modules you need is easier than adopting the whole suite. The README also describes an architecture diagram and a module dependency diagram, which help show how the parts connect.

  • -common modules hold shared configuration, utilities and base services
  • -dao modules are generated by MyBatis Generator
  • -rpc-api and rpc-service modules expose and implement remote interfaces, built on Dubbo in the technology list
  • -sdk modules are development kits for other projects to call

Know the technology stack and its age

The README's technology list includes Spring, Spring MVC, MyBatis, Apache Shiro, Dubbo, ZooKeeper, Redis, Thymeleaf, ActiveMQ and FastDFS. Many of these are older tools, and the project's last update is well in the past. Check whether each library still fits your security and maintenance needs before you adopt it.

Teams already using this stack, or studying how a Spring microservice layout is organised, will find it easier to follow than a newer framework would be.

What people use it for

  • Adding a permissions and single sign-on layer to an internal Java admin system using zheng-upms
  • Starting a WeChat official account or mini-program backend using the zheng-wechat modules
  • Studying how a multi-module Spring microservice project is organised
  • Reusing the content management or payment modules as a base for a business website

Frequently asked questions

Is zheng free to use?

Yes. zheng is released under the MIT licence, as shown in the README badge and project information. Check the LICENSE file in the repository for the full terms.

What do I need to install zheng?

The README lists Java and Maven as the prerequisites for the clone-and-build install method. It does not give specific versions, so check the repository for those.

How do I install zheng?

Clone the repository with git clone https://github.com/shuzheng/zheng and then build it with Maven. The README gives only the clone command and does not list the full build steps.

Is zheng good for beginners?

Not really. The README's project spans many modules and services with little guidance, so beginners without Java or Spring experience will likely struggle. It suits experienced Java teams better.

What are the alternatives to zheng?

The project's comparable projects are Spring Boot, JeecgBoot, RuoYi and Apache Shiro. Spring Boot is a general starting point, while Shiro covers only security, and JeecgBoot and RuoYi are admin-system options.

Why won't my zheng build work?

The README does not include a troubleshooting section. Start by checking your Java and Maven setup, then look at the repository's issues and the README for module-specific notes.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

zheng suits experienced Java teams that want a pre-made permissions and login layer, WeChat backends, or a reference for a multi-module Spring layout. Teams that are new to Java and Spring, want a modern stack, or need a single small library should choose something else, such as Spring Boot or RuoYi.

Install options & downloads