ContiNew

为什么选 ContiNew Admin

来自维护者原话的十条选型理由:长期稳定、甄选技术栈、Starter 组件、CRUD 套件、代码生成器、开发体验、代码规范、工程化实践、业务脚手架与质量安全。

本文是 4.x 的归档文档(冻结于 v4.2.0)。该分支只接收勘误修正, 内容基本不再变动;文中的源码路径、配置项与版本号均以 4.2.x 为准,不建议用于新项目。

新项目请查看 5.x 最新文档。已在 4.2.x 上运行的项目,本文仍是可靠依据。

AI 编程纪元已经开启,基于 ContiNew 项目开发,让 AI 助手“学习”更优雅的代码规范,“写出”更优质的代码。

以下十条理由来自维护者的持续实践,并随版本演进不断兑现。

1. 长期稳定

自 2022 年 12 月 8 日创建,2023 年 3 月 26 日发布 v1.0.0,此后保持稳定的迭代节奏,累计发布数十个大版本,完整历史见 CHANGELOG.md(更新日志)与各仓库 Releases。

2. 甄选技术栈

ContiNew(Continue New)项目致力于持续迭代优化,确保技术栈紧跟时代。在技术选型时,我们进行了深度广泛的调研,从流行度、成熟度和发展潜力等多维度精心挑选技术栈。当前基线见项目介绍。

3. Starter 组件

从 v2.1.0 版本开始,我们将后端基础组件及各框架集成配置抽取并封装到 ContiNew Starter 项目中,极大降低上手和升级难度。且**已发布至 Maven 中央仓库**,你可以在任意项目中直接引入所需依赖使用。即使你不使用完整的中后台框架,这些能让你搭项目框架更快、更爽、更省力的 Starter 组件,难道不香吗?

4. CRUD 套件

封装通用增删改查套件,适配后端各分层架构,几分钟即可提供一套完整的 CRUD API,包括新增、修改、批量删除、查询详情、分页列表、全部列表、树型列表、Excel 导出,甚至是字典列表(用于下拉选项场景)。所有 API 均可根据实际需求灵活开放或扩展。

@Tag(name = "部门管理 API")
@RestController
@CrudRequestMapping(value = "/system/dept", api = {Api.TREE, Api.GET, Api.CREATE, Api.UPDATE, Api.DELETE, Api.EXPORT, Api.TREE_DICT})
public class DeptController extends BaseController<DeptService, DeptResp, DeptDetailResp, DeptQuery, DeptReq> {}

完整说明见 CRUD 开发。

5. 代码生成器

同步提供了代码生成器,配套前后端代码生成模板。数据表设计完成后,简单配置即可生成前后端 80% 的代码,包括 CRUD API、权限控制、参数校验、接口文档等内容。若业务不复杂,甚至能覆盖 95% 的代码量。详见代码生成。

6. 提升开发体验

持续优化并适配各类能提升开发体验的组件。

  • ContiNew Starter 组件集合:针对 Spring 基础配置、通用解决方案及流行框架进行深度封装,改善你开发每个 Spring Boot Web 项目的体验(包含时间日期及枚举参数自动转换、默认线程池、跨域、加密、脱敏、限流、幂等、License、日志、异常及响应通用解决方案等);
  • Crane4j 数据填充组件:减少因单个字段(如用户名)而产生的联表查询;
  • SpEL Validator:基于 SpEL 表达式的参数校验,强化复杂场景下的参数验证(如:当某字段为特定值时,另一字段不能为空);
  • P6Spy SQL 性能分析:开发期间可方便地监控 SQL 执行性能;
  • TLog 链路追踪:在繁杂的日志中快速定位某次请求的完整日志;
  • JetCache 缓存框架:通过注解即可实现方法级缓存,支持灵活的二级缓存配置和分布式自动刷新。

7. Almost 最佳后端规范

后端严格遵循阿里巴巴 Java 编码规范,注释覆盖率 > 45%,接口参数示例 100%。代码分层清晰,变量与方法命名统一规范,前端代码同样采用严格的 ESLint、StyleLint 等检查。优秀的设计带来极高的代码复用率!开发时,你会有一种“无需多写,理应如此”的流畅感。

8. 卓越工程化实践

后端采用模块化工程结构,集成了统一版本管理、编译时自动代码格式化等插件。提供自定义打包部署配置(配置文件、第三方依赖与主程序分离),以及全套环境和应用的 Docker Compose 部署脚本,详见部署。

为减少新项目开发的改造成本,我们持续深度聚合项目品牌配置,通过简单的配置和结构修改,即可快速启动你的专属项目。

我们还进行了全局 Lombok 配置,继承场景默认自动应用 @EqualsAndHashCode(callSuper = true) 和 @ToString(callSuper = true),无需手动添加。同时主动禁用了部分 Lombok 注解(如 @Val、@Log4j 等),避免“又菜又爱玩”的 partner 滥用。

9. 全能业务脚手架

支持 SaaS 租户架构,基于 RBAC 的权限控制与通用数据权限管理。精心设计的 UI 界面与色彩主题,兼具美观与实用性。内置丰富的通用业务解决方案:第三方登录、邮箱/短信服务(含生产级漏洞处理方案)、个人中心、用户管理、角色管理、组织管理、系统配置、系统日志、消息中心、通知公告等,逻辑闭环,开箱即用,详见功能手册。

优秀的中后台框架不仅提供组件集成与配置,封装好用的工具,更应提供通用基础业务设计及解决方案,为初创团队减负。

10. 质量与安全并重

我们高度重视项目质量与安全,CI 已集成 SonarCloud 静态扫描与 Open Code Review AI 评审,提交 PR 即自动扫描与评审质量问题。定期扫描 CVE 漏洞,及时解决潜在风险。封装了数据库字段加密、JSON 脱敏、XSS 过滤等工具,提供全方位的安全解决方案,已披露漏洞的处理情况见安全通告。

许多项目在开发或交付过程中需满足 SonarQube 等质量指标,使用 ContiNew Admin 框架,让你从一开始就站在高质量的起点。


由于篇幅有限,且项目正处于高速发展期,更多功能正在持续开发中,敬请关注仓库或加入交流群了解最新动态。至于统一异常处理、错误处理、基础线程池配置(默认线程参数、线程上下文支持异步传递)等基础特性,这里不再赘述,更多细节优化欢迎克隆代码体验。

Talk is cheap, show the code.

目录