StringBoot 集成 Magic-Api

Magic-Api 简介:

  magic-api是一个基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为HTTP接口。 无需定义ControllerServiceDaoMapperXMLVO等Java对象即可完成常见的HTTP API接口开发。

Magic-Api 官网:https://www.ssssssss.org/magic-api

Magic_api语法简介:

1. 分页

import request;

var result = db.camel().page(""" 

""")

return {
    current:page,
    optimizeCountsql: true,
    pages:ceil(result.total::double / size::double ),
    records: result.list == null ? [] : result.list,
    searchCount: true,
    size: size,
    total:result.total
}

2. 列表

return db.camel().select(""" 

""")

3. 批量

import request;

var tx = db.transaction();
try {
    for (val in body) {
    
    }
    tx.commit();
} catch(e) {
    tx.rollback();
    exit 400, '数据操作出错,回滚事务';
}

4. 新增

return db.insert("""

""" )

5. 修改

return db.update("""

""")

6. 删除

return db.update("""

""")

7. 逻辑

var count = db.selectInt("""
    
""");

if (count  == 0) {
    return db.insert("""
        
    """)
} else if (count  == 1) {
    return db.update("""

    """)
} else {
    exit 400, '数据异常';
}

项目实战:

1. 引入依赖包

<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-api-spring-boot-starter</artifactId>
    <version>2.1.1</version>
</dependency>

2. 配置参数

magic-api:
  security:   # 安全配置
    username: admin    # 登录用的用户名
    password: 123456   # 登录用的密码
  show-url: true  #配置打印SQL
  response-code:
    success: 200 #执行成功的code值
    invalid: 400 #参数验证未通过的code值
    exception: 500 #执行出现异常的code值
  response: |- #配置JSON格式,格式为magic-script中的表达式
    {
      code: code,
      message: message,
      data,
      extra:executeTime
    }
  web: /magic/web #配置web页面入口
  resource:
    #配置文件存储位置。当以classpath开头时,为只读模式
    #mac用户请改为可读写的目录
    #如果不想存到文件中,可以参考配置将接口信息存到数据库、Redis中(或自定义)
    #location: D:/data/magic-api
    type: database # 配置存储在数据库中
    tableName: magic_api_file # 数据库中的表名
    prefix: /magic-api # key前缀
    readonly: false # 是否是只读模式

3. 数据库文件初始化

CREATE TABLE "public"."magic_api_file" (
  "file_path" varchar(512) COLLATE "pg_catalog"."default" NOT NULL,
  "file_content" text COLLATE "pg_catalog"."default"
);

4. 项目启动

相关推荐

  1. magic-api post 参数带入

    2024-05-03 02:16:01       60 阅读
  2. springboot集成mybatis-plus

    2024-05-03 02:16:01       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-03 02:16:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-03 02:16:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-03 02:16:01       87 阅读
  4. Python语言-面向对象

    2024-05-03 02:16:01       96 阅读

热门阅读

  1. C语言如何将指针数组作为函教的参教?

    2024-05-03 02:16:01       29 阅读
  2. 深入解析Spring框架中的ReflectionUtils

    2024-05-03 02:16:01       32 阅读
  3. C++ (11)常用代码

    2024-05-03 02:16:01       31 阅读
  4. 2024.4.27 —— LeetCode 高频题复盘

    2024-05-03 02:16:01       28 阅读
  5. MATLAB R2024a主要更新内容及发布亮点

    2024-05-03 02:16:01       25 阅读
  6. 2024-04-29 golang-GOPROXY-设置

    2024-05-03 02:16:01       28 阅读
  7. 《Redis使用手册之发布与订阅》

    2024-05-03 02:16:01       31 阅读
  8. 网络工程师专业英语汇总

    2024-05-03 02:16:01       25 阅读
  9. git 子模块

    2024-05-03 02:16:01       27 阅读