一句话定位:国产 Java 系开源 CMS,Spring Boot 3 + Vue 3 全栈,主打「标签化建站 + 全站静态化 + 可视化模板设计」,免费可商用,往上还有开发版 / 企业版 / 政务版三档付费阶梯。
| 项 | 值 |
|---|---|
| 仓库地址 | https://gitee.com/mingSoft/MCMS (镜像:github.com/ming-soft/mcms) |
| 官方站点 | https://www.mingsoft.net |
| 开源协议 | MIT(可商用,官方要求保留代码内铭飞版权注释) |
| 技术栈 | Spring Boot 3 / Spring MVC / MyBatis-Plus / Shiro / Freemarker + Vue 3 / Element Plus / MySQL ≥ 8 |
| 当前版本 | 6.2.2 |
| 社区热度 | Gitee 33.3K Star(GVP 项目,建站类头部) |
| 维护团队 | 江西铭软科技(铭飞 mingSoft) |
| 著作权登记 | 开源版 2022SR0922227 · 企业版 2022SR0683859 · 政务版 2022SR0444520 |
| 文档日期 | 2026-10-25 |
1. 项目是什么
MCMS 是一套面向企业官网、政务门户、行业站点的 Java 内容管理系统,本质是「CMS 内核 + 插件市场 + 模板市场」的商业化开源组合,对标的是织梦(DedeCMS)、帝国 CMS 这类老牌 PHP 建站系统,以及国内的 JFinal CMS、Halo 等 Java 博客/CMS 方案。
它解决的核心问题有四个:
- 从零搭一套后台管理系统太慢 —— 菜单、权限、角色、栏目、内容、静态化这些通用能力直接白送,省掉 1~2 个月的脚手架期。
- 非技术人员改不了网站 —— 提供一套自定义标签(类似织梦的
{dede:}语法),前端只要会 HTML 就能套模板,不必写 Java。 - 模板和插件从零做成本高 —— MStore 市场有上百套成品模板和站群、微信、商城等插件,可在线安装。
- 政务/国企要求国产化与等保 —— 政务版支持信创数据库、中间件、操作系统,可配合等保二/三级测评。
不适用的场景:它不做前后端分离的 API 服务(虽然有 Swagger 接口文档,但主业是「页面静态化」的 Web 站点);不适合做高并发互联网产品(静态化本身是为抗并发,动态接口并非其强项);不适合当纯博客用(体量偏重,个人博客选 Halo / Hexo 更合适)。
2. 核心特性
| 特性 | 说明 | 对使用者的价值 |
|---|---|---|
| 标签化建站 | 系统内置标签集,模板中用标签调用栏目、文章、分页数据 | 会 HTML 就能做站,前端无需懂 Java |
| 全站静态化 | 主页、栏目、文章可批量生成 HTML 静态页 | 抗并发、利于 SEO,服务器压力小 |
| 可视化模板拖拽 | MDesigner 皮肤设计器,拖拽布局 + 样式编辑,可导出模板导入系统 | 设计师不写代码也能出模板,缩短交付周期 |
| 代码生成器 | 在线配置后一键生成实体 / Service / Controller / CRUD / 分页代码,支持达梦、人大金仓、PG、Oracle、MySQL | 二开效率提升,降低外包工期风险 |
| 跨终端适配 | PC 与移动端共用一套数据,按终端自动切换界面 | 一次维护双端 |
| 模块化 Maven 结构 | 核心模块发布到 Maven 中央库,可按 pom.xml 依赖方式拉取源码 | 二次开发可只升级某个模块 |
| 插件机制 | 站群、微信、商城等以插件形式安装 | 业务按需扩展,不污染核心代码 |
| 国产化适配 | 政务版支持信创全栈 + 等保二三级 + 全文检索 + 多级审批 | 政企项目合规交付 |
3. 技术架构
整体结构:单体应用(Spring Boot Jar / 可打 WAR 部署 Tomcat),前台由 Freemarker 渲染并静态化为 HTML,后台管理界面为 Vue 3 + Element Plus 脚手架,数据层 MyBatis-Plus,权限层 Shiro,缓存 Redis,搜索 Elasticsearch。
技术选型(摘自官方 README,协议均为宽松型,商用无传染风险):
| 层 | 技术 | 作用 | 协议 |
|---|---|---|---|
| 容器 | Spring Framework | IoC / AOP | Apache 2.0 |
| Web | Spring Boot 3 + Spring MVC | 应用框架 | Apache 2.0 |
| 安全 | Apache Shiro | 认证与权限 | Apache 2.0 |
| 持久 | MyBatis + MyBatis-Plus + PageHelper | ORM 与分页 | Apache 2.0 |
| 视图 | Freemarker | 前台模板渲染 | Apache 2.0 |
| 日志 | Log4J | 日志 | Apache 2.0 |
| 构建 | Maven(JDK ≥ 17) | 依赖管理 | Apache 2.0 |
| 缓存 | Redis | 分布式缓存 | MIT |
| 搜索 | Elasticsearch | 分布式检索(政务版) | Apache 2.0 |
| 工具 | Hutool | 常用工具类 | MIT |
| 前端 | Vue 3 / Element Plus / jQuery / validator / animate.css | 后台界面与交互 | MIT |
关键设计取舍:选择「静态化」而非「纯动态渲染」,牺牲了内容修改的实时性(改完必须重新生成),换来极低的服务器成本和 SEO 友好。这个取舍决定了它的适用边界 —— 内容型站点(官网、门户、新闻)非常合身,交互型应用(社区、商城)要靠插件补课。
接口文档:6.0.0 及以上版本访问 http://localhost:8080/swagger-ui.html,需在 application.yml 中设置 swagger-enable: true。
4. 目录结构
MCMS/
├── doc/ 项目文档与数据库 SQL(mcms-版本号.sql、*-up-*.sql 升级补丁)
├── src/main/java/ Java 源代码
├── src/main/resources/ 配置文件(application-dev.yml 等)
├── src/main/webapp/
│ ├── static/ 静态资源:js、css、image、第三方前端插件
│ ├── html/ 生成的静态页面(示例,实际项目可删)
│ ├── templet/ 模板文件夹(套皮肤就是换这里)
│ ├── upload/ 上传资源目录
│ └── WEB-INF/manager/ 后台管理端视图页面
├── LICENSE MIT 协议
├── README.md 项目说明
└── pom.xml Maven 依赖配置5. 快速上手
环境硬门槛:JDK ≥ 17、MySQL ≥ 8(必须开启忽略大小写)、Tomcat ≥ 10(打 WAR 时需要)、Maven。IDE 用 IDEA 或 Eclipse 均可。
方式 A:源码运行
# 1. 克隆
git clone https://gitee.com/mingSoft/MCMS.git
# 2. IDEA 中 Import Project,选择 pom.xml,勾选 Import Maven projects automatically
# 等待依赖下载完成(首次较慢),确认 Problems 窗口无报错
# 3. 创建数据库 mcms,字符集 utf-8,导入 doc/mcms-版本号.sql
# (若为升级现有系统,用 *-up-*.sql 补丁,完整 SQL 与补丁不要重复导入)
# 4. 修改 src/main/resources/application-dev.yml 中的数据库连接参数
# 5. 运行启动类
# src/main/java/.../MSApplication.java 的 main 方法方式 B:Docker 一键
docker run -d \
-p 3366:3306 \
-p 8181:8181 \
--name mcms \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD='YourPassword!' \
docker.1ms.run/mingsoft/mcms:6.2.2 \
--sql-mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION \
--lower-case-table-names=1 \
--max-connections=1000首次登录与初始化
- 后台地址:源码运行
http://localhost:8080/ms/login.do;Docker 运行http://localhost:8181/ms/login.do(注意是后台登录页,不是会员中心)。 - 默认账号:
msopen/msopen(上线前必须改)。 - 进入后台 → 内容管理 → 静态化,依次执行「生成主页」「生成栏目」「生成文章」。
- 完成后再访问前台地址,否则前台 404。
启动失败的三个高频原因:数据库没开忽略大小写(Linux 下 lower_case_table_names=1 必须在初始化数据目录前设置,事后改会报错);SQL 没导全或重复导入升级补丁;JDK 版本低于 17。
6. 功能模块清单
| 模块 | 主要能力 | 开源版 |
|---|---|---|
| 内容管理 | 文章增删改查、审核、批量操作、链接查看(6.2.2) | ✅ |
| 栏目管理 | 多级栏目、栏目属性配置;扩展字段需开发版 | ✅ 基础版 |
| 菜单与权限 | 菜单、角色、权限标识(6.1.0 强化越权防护) | ✅ |
| 静态化 | 主页/栏目/文章批量生成 HTML | ✅ |
| 模板管理 | 模板目录切换、在线编辑 | ✅ |
| 模型管理 | 自定义内容模型与字段 | ✅ |
| 文件上传 | 上传、管理;上传到任意位置需开发版 | ✅ 基础版 |
| 站群 / 微信 / 商城 | 以 MStore 插件形式安装 | 插件另计 |
| 全文检索 | Elasticsearch 集成 | 政务版 |
| 多级审批 | 内容多级审核流程 | 政务版 |
| 栏目数据权限 | 按栏目控制数据可见范围 | 企业版 |
说明:手册对内核的表述是「提供最基本的菜单、权限、角色、栏目、内容、静态化等功能」,其余能力以插件和商业版补足。
7. 版本与授权
| 版本 | 面向对象 | 价格(一次性) | 关键差异 |
|---|---|---|---|
| 开源版 | 个人 / 中小企业 / 学习者 | 免费 | 全源码,核心功能齐全,每月/每两月跟随官方更新 |
| 开发版 | 需要深度二开的团队 | ¥2860 起 | 提供 ms-base、ms-basic、ms-mdiy 底层依赖源码;栏目扩展字段;任意位置上传;赠代码生成器 VIP 3 个月;群内优先解答 |
| 企业版 | 中小企业商用 | ¥15860 起 | 系统配置更丰富、安全性更强、栏目数据权限、静态化性能更高 |
| 政务版 | 党政机关 / 事业单位 | ¥22860 起 | 信创全栈适配、等保二三级、全文检索、多级审批 |
协议要点
- MIT 协议,可商用、可闭源分发、无需授权费,但官方明确要求保留代码中铭飞的注释与版权信息(MIT 本身不强制,这是官方立场,尊重为宜)。
- 二开产生的增量代码可申请著作权,交付的基础代码版权归铭软。
- 各版本有独立著作权登记号,混用不同版本的代码存在合规风险。
8. 商业模式说明
这套开源产品的商业设计相当完整,值得单独说清楚:开源版是获客入口,真正赚钱的是四层漏斗。
| 收入层 | 产品 | 怎么赚钱 | 定位 |
|---|---|---|---|
| ① 版本授权 | 开源→开发→企业→政务 | 一次性买断,¥2860 / ¥15860 / ¥22860 起;不按服务器数、域名数收费 | 主收入,核心变现 |
| ② 增值加购 | 插件、多数据库支持、Vue3 脚手架版 | 每增加一款数据库支持 +30% 总价;Vue3 脚手架版 +30% 协议总价 | 提升客单价 |
| ③ 服务与定制 | 技术支持续费、部署、二开、模板定制 | 服务满一年关闭订单,续服务 30%/年;远程二开前端 1200 元/人天、后端 1500 元/人天(3 天起订);部署 1500 元/次 | 持续现金流,高毛利 |
| ④ 平台与工具 | MStore 市场、MDesigner 皮肤设计器、代码生成器、PM 项目管理、SaaS 建站 | 模板/插件在线交易(开发者可分成获被动收入);SaaS 免备案建站(限时免费试用,长期付费);代码生成器分 VIP 档 | 拉生态、扩用户池 |
几个关键商业规则(采购前必读):
- 报价不含硬件、第三方软件授权、差旅费用;开发票需对公付款,税点 1%。
- 版本费用按「基础版本费 + 选配插件费」合计,插件各自定价。
- 技术支持期限与订单绑定:一年后停止更新,想要持续升级得每年付 30%。
- 过期订单要补采插件,必须先续技术支持费,且大概率需要自行升级到最新版本。
- 二次开发引发的问题不在技术支持范围内 —— 这条基本意味着「你们自己改的锅自己背」。
判断:这是一套「卖源码授权 + 卖服务 + 卖生态」的组合拳,比纯 SaaS 订阅更适合政企客户(要求私有化、要求源码交付、要求一次性采购走流程)。对开源用户而言,免费版够用,但要想长期用得顺,本质上是在为「更新渠道 + 底层源码 + 数据库兼容」付费。
9. 生态与周边
| 类型 | 名称 / 地址 | 说明 |
|---|---|---|
| 模板与插件市场 | https://store.mingsoft.net (MStore) | 上百套免费/付费模板,站群、微信、商城等插件在线安装 |
| 皮肤设计器 | https://designer.mingsoft.net (MDesigner) | 拖拽式可视化改配色、字体、布局、背景,导出模板 |
| 代码生成器 | https://code.mingsoft.net | 在线生成前后端 CRUD 源码,分 VIP 档 |
| 项目管理 | https://pm.mingsoft.net | 敏捷看板、周报,顺带卖 SaaS |
| 在线演示 | https://a.cms.demo.mingsoft.net/ms/login.do | 后台演示环境 |
| 使用手册 | https://doc.mingsoft.net/mcms/ | 含标签、接口、静态化说明 |
| 插件手册 / 部署手册 / 代码生成器文档 | doc.mingsoft.net/plugs/ · /server/ · /code/ | 部署常见问题清单很实用 |
| 视频教程 | https://space.bilibili.com/1825880395 | B 站官方频道 |
| 社区 | QQ 群 1~6 群(多群已满) | 官方技术支持主要在群内,非 GitHub Issues |
| 一键体验包 | 天翼云盘(访问码 apz2) | Windows / Linux 免装 JDK 直接跑 |
扩展方式:二开主要走三条路 —— 换模板(改 webapp/templet)、写插件(按插件手册的模块规范,独立 jar + 独立菜单权限)、继承覆盖内核模块(开发版提供 ms-base 等底层源码时才顺手)。
10. 选型建议
强烈建议用
- 政企/国企门户、事业单位站群,需要信创适配 + 等保 + 私有化部署 + 源码交付走采购流程的项目。
- 外包团队做企业官网类项目,2~4 周要交付,模板和标签能极大压缩工期。
- 需要「一次性买断、不按年订阅」的客户 —— 这是它相对 SaaS 建站的核心优势。
可以试试
- 中小企业的官网 + 内容运营,开源版零成本起步,先跑通再决定是否买商业版。
- 有 Java 团队、想沉淀一套内部建站底座的公司。
不建议用
- 前后端分离的纯 API 服务或高交互 Web 应用(社区、电商前台),静态化模型不适配。
- 无 Java 运维能力的个人博客 —— 上 Halo / Hexo / WordPress 更省事。
- 追求极致轻量、容器化微服务架构的团队 —— 它是标准单体,别硬掰。
同类对比
| 维度 | MCMS | 织梦 DedeCMS | Halo | JFinal CMS |
|---|---|---|---|---|
| 语言/栈 | Java / Spring Boot 3 | PHP | Java / Spring Boot | Java / JFinal |
| 商用授权 | MIT,免费 | 曾有授权争议 | GPL 系,免费 | Apache 2.0 |
| 静态化 | 强(全站) | 强 | 弱(动态渲染) | 一般 |
| 政务信创 | 有专门版本 | 无 | 无 | 无 |
| 上手难度 | 中(需 Java 环境) | 低 | 低 | 中 |
11. 风险与坑
部署层
- 首次部署不生成静态化,前台必 404 —— 这是最高频的坑,官方手册专门标红提示。
- MySQL 必须
lower_case_table_names=1,Linux 下要在初始化数据目录之前设置,事后改会直接启动失败、甚至需要重导数据。 - Docker 部署建议把
/home/mcms挂载到宿主机,否则升级即丢配置。
商业与授权层
- 开源版与商业版源码不通用,别指望从企业版回退到开源版还能编译。
- 商业版服务满一年就停止更新,想持续跟进要按总价 30%/年续费 —— 长期成本要算进去。
- 二开的问题官方不兜底;一旦深度改内核,后续升级基本靠自己 merge。
- 官方明确提示:已上线或临近服务期的项目不建议升级,跨版本升级风险由使用方承担。
信息一致性层
- README 混杂了大量营销文案和多版本说明,「每月 28 日更新」与官网「每两个月收集 issues 更新」两种说法并存,实际节奏建议以 Gitee 提交记录为准。
- 后台界面技术表述有两处并存(Freemarker 视图 / Vue 3 脚手架),实际以
webapp/WEB-INF/manager目录内容为准。
生产落地 checklist
- ☐ 默认账号
msopen/msopen已修改,后台路径考虑改名 - ✅
swagger-enable生产环境已关闭 - ✅ MySQL 字符集与大小写策略已确认
- ✅ 静态化生成计划(改内容后如何触发重新生成)已定
- ☐ 备份策略覆盖数据库 +
upload目录 +templet目录 - ☐ 版权注释保留,商业版授权凭证归档