直接跳到内容

简介

技术交流QQ群:3549030

什么是 Kungfu?

kungfu (发音为 /ˌkʌŋˈfuː/,类似 kongfu) 一个专为 JFinal 设计构建 RESTful API 服务的急速开发库。易学易用、提供强大灵活的脚手架、极大简化CRUD写法、灵活可控、加速控制层、服务层开发。以极快的速度和极好的开发体验完成业务需求。让您节约时间体验工作以外的人生。

下面是一个最基本的示例:

java
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.kungfu.core.*;

@Api(value = "系统菜单", tags = "系统菜单接口")
@Path("/sys-menu")
public class SysMenuController extends KungfuController {

    @Inject
    private SysMenuService sysMenuService;

    @ApiOperation(value = "菜单信息保存或修改", notes = "根据表单内容保存或更新内容",  httpMethod = ApiEnum.METHOD_POST, produces = ApiEnum.PRODUCES_JSON)
    @ApiImplicitParams({
        @ApiImplicitParam(name = "sysMenu", value = "菜单信息", dataTypeClass = SysMenuDTO.class,  paramType = ApiEnum.PARAM_TYPE_BODY, required = true)
    })
    @ApiResCustom(ResultVO.class)
    @Before(SysMenuValidator.class)
    public void saveOrUpdate() {
        SysMenu sysMenu = toModel(SysMenu.class);
        renderJson(sysMenuService.saveOrUpdate(sysMenu, getUserInfo()));
    }
}

前端POST请求: /sys-menu/saveOrUpdate

json
  {
    "id": null,
    "parentCode": "sys",
    "parentName": "系统管理",
    "menuCode": "role",
    "menuName": "角色管理",
    "isEnabled": true,
    "linkPage": "",
    "menuType": 1,
    "icon": "",
    "displayNo": 1,
    "remark": "基于角色的权限控制",
    "component": ""
  }

结果展示

失败情况:

json
{
    "msg": "编码为'role'已存在,请重新输入",
    "code": 631
}

成功情况:

json
{
    "msg": "保存成功",
    "code": 200
}

上面的示例展示了 Kungfu 的几个核心封装:

  • 标准的接口文档:前后端分离模式下,给前端提供标准的接口文档,实现高效对接。

  • 入参自动获取转换对象:省去了参数的获取及转换工作。

  • 参数校验:校验入参的合法性,并在不合法情况下给前端友好的提示信息。

你可能已经有了些疑问——先别急,在后续的文档中我们会详细介绍每一个细节。现在,请继续看下去,以确保你对 Kungfu 作为一个开发封装库到底提供了什么有一个宏观的了解。

预备知识

文档接下来的内容会假设你对 JFinal 和 Java Web 已经基本熟悉。如果你对JFinal开发完全陌生,最好不要直接从一个框架开始进行入门学习——最好是掌握了基础知识再回到这里。你可以通过这篇 JFinal 开发文档来学习 JFinal 框架知识。如果之前有其他框架的经验会很有帮助,但也不是必须的。

基于JFinal的Restful API 开发扩展库

一个专为JFinal设计的构建RESTful Web服务的急速开发库。

特性

  • 能够快速构建 JFinal RESTful API 项目。
  • 支持代码生成能力,使用极度简单及灵活,常规的代码帮您写。
  • 支持动态构建查询SQL语句。
  • 加速Controller层开发的速度及体验。
  • 加速Service层开发的速度及体验。
  • 更多特性等你发现...

如果你是初学者,可能会觉得这些概念有些复杂。别担心!理解教程和指南的内容只需要具备基础的 JFinal 和 Java Web 知识。即使你不是这些方面的专家,也能够跟得上。

简介已经加载完毕