SpringBoot整合Magic-Api - Go语言中文社区

SpringBoot整合Magic-Api


        Magic-Api是一个基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为HTTP接口,无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象即可完成常见的HTTP API接口开发。
        本文演示SpringBoot整合Magic-Api,并演示基本使用。

一、项目搭建
    新建一个SpringBoot项目,引入依赖:

<properties>
		<java.version>1.8</java.version>
		<easyexcel.version>2.2.6</easyexcel.version>
		<lombok.version>1.16.10</lombok.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jdbc</artifactId>
		</dependency>
		<dependency>
			<groupId>org.ssssssss</groupId>
			<artifactId>magic-api-spring-boot-starter</artifactId>
			<version>1.3.0</version>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>8.0.22</scope>
		</dependency>
		<!--swagger配置-->
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.9.2</version>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			<version>2.9.2</version>
		</dependency>
	</dependencies>

二、配置文件及建表脚本
    ①配置项目端口号及邮件信息:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mytest?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
    username: ****
    password: ****
    driver-class-name: com.mysql.cj.jdbc.Driver
magic-api:
  web: /magic/web
  resource:
    type: database
    tableName: magic_config
    prefix: /api
    readonly: false
  sql-column-case: camel
  page-config:
    size: size
    page: page
    default-page: 1
    default-size: 10
server:
  port: 8989

    ②建表脚本:

CREATE TABLE `magic_config`  (
  `id` bigint(255) NOT NULL AUTO_INCREMENT,
  `file_path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `file_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 0 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8_bin DEFAULT NULL,
  `age` int(10) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


三、编码实现
    ②启动类

@SpringBootApplication
@EnableSwagger2
public class MailApplication {
    public static void main(String[] args) {
        SpringApplication.run(MailApplication.class, args);
    }
}


    ③启动项目并访问http://localhost:8989/magic/web/index.html:

      ④集成Swagger:访问http://localhost:8989/swagger-ui.html可查看接口文档:


测试验证OK。
说明:
Magic特性很多:
     支持MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer 等多支持jdbc规范的数据库
     支持非关系型数据库Redis、Mongodb
     支持分页查询以及自定义分页查询
     支持多数据源配置,支持运行时动态添加数据源
     支持SQL缓存,以及自定义SQL缓存
     支持自定义JSON结果、自定义分页结果
     支持对接口权限配置、拦截器等功能
     支持运行时动态修改数据源
     支持Swagger接口文档生成
     基于magic-script脚本引擎,动态编译,无需重启,实时发布
     支持Linq式查询,关联、转换更简单
     支持数据库事务、SQL支持拼接,占位符,判断等语法
     支持文件上传、下载、输出图片
     支持脚本历史版本对比与恢复
     支持脚本代码自动提示、错误提示
     支持导入Spring中的Bean、Java中的类
     支持在线调试脚本引擎
     支持自定义工具类、自定义模块包、自定义类型扩展、自定义函数等。
有兴趣的读者可自行尝试。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/ldllovegyh/article/details/118297943
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-12-11 17:46:11
  • 阅读 ( 646 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢