帅呆!接口开发不用写Controller、Service、Dao、Mapper、XML、VO,全自动生成

VSole2022-12-28 10:27:47

今天给小伙伴们介绍一个Java接口快速开发框架-magic-api

简介

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

访问 http://localhost:9999/magic/web 进行操作

文档地址:

  • https://ssssssss.org

在线演示:

  • https://magic-api.ssssssss.org

开源地址:

  • https://gitee.com/ssssssss-team/magic-api

特性

  • 支持MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer 等支持jdbc规范的数据库
  • 支持非关系型数据库Redis、Mongodb
  • 支持集群部署、接口自动同步。
  • 支持分页查询以及自定义分页查询
  • 支持多数据源配置,支持在线配置数据源
  • 支持SQL缓存,以及自定义SQL缓存
  • 支持自定义JSON结果、自定义分页结果
  • 支持对接口权限配置、拦截器等功能
  • 支持运行时动态修改数据源
  • 支持Swagger接口文档生成
  • 基于magic-script脚本引擎,动态编译,无需重启,实时发布
  • 支持Linq式查询,关联、转换更简单
  • 支持数据库事务、SQL支持拼接,占位符,判断等语法
  • 支持文件上传、下载、输出图片
  • 支持脚本历史版本对比与恢复
  • 支持脚本代码自动提示、参数提示、悬浮提示、错误提示
  • 支持导入Spring中的Bean、Java中的类
  • 支持在线调试
  • 支持自定义工具类、自定义模块包、自定义类型扩展、自定义方言、自定义列名转换等自定义操作

快速开始

maven引入
<dependency>
 <groupId>org.ssssssssgroupId>
    <artifactId>magic-api-spring-boot-starterartifactId>
    <version>1.7.1version>
dependency>
修改application.properties
server.port=9999
#配置web页面入口
magic-api.web=/magic/web
#配置文件存储位置。当以classpath开头时,为只读模式
magic-api.resource.location=/data/magic-api
项目截图

整体截图

代码提示

DEBUG

参数提示

远程推送

历史记录

数据源

全局搜索

接口dao
本作品采用《CC 协议》,转载必须注明作者和本文链接
Optional对象创建首先我们先打开Optional的内部,去一探究竟 先把几个创建Optional对象的方法提取出来public?我们可以看到两个构造方格都是private?我们没办法在外面去new出来Optional对象。这个静态方法大致?是创建出一个包装值为空的一个对象因为没有任何参数赋值。再做一个简单的实例展示 与上面对应//?//如果为空直接返回this
MyBatis-Plus是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。真实开发中,version(乐观锁),deleted、gmt_create、gem_mo
#配置文件存储位置。当以classpath开头时,为只读模式
import javassist.CtClass;import javassist.CtMethod;
Java审计其实和Php审计的思路一样,唯一不同的可能是复杂的框架和代码。
是否会校验,在代码变更的时候 sql 语句是否也发生了变更呢?针对以上两个问题,sqlmock 可以完成对 sql 语句的单侧,让你对 orm 生成的 sql 了如指掌,同时清晰 test raw sql 也让 review 的同事快乐加倍。
Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务、集群、Spring Framework等。随着中间件的启动,会打开两个端口,61616是工作端口,消息在这个端口进行传递;8161是Web管理页面端口。 Jetty 是一个开源的 servlet 容器,它为基于 Java 的 web 容器,例如 JSP 和 servlet 提
前言作为一个资深后端码农天天都要和数据库打交道,最早使用的是 Hiberate,一个封装性极强的持久性框架。自从接触到 Mybatis 就被它的灵活性所折服了,可以自己写 SQL,虽然轻量级,但是麻雀虽小,五脏俱全。这篇文章就来讲讲什么是 Mybatis,如何简单的使用 Mybatis。
前言之前hvv的时候有条件钓鱼的情况下也没有想着去尝试,一方面是免杀的工作没准备好。2022.11.15:花了几天写了这个,但是发现对于钓鱼的话效果其实还是不行,所以这篇就单纯记录下了,白加黑的方式还是更适合做权限维持,这篇笔记仅供大家参考0X00????启动为了更好的起到免杀和适配环境原因,所以启动的四步操作均通过汇编来进行实现,之后各个语言只需要通过shellcode加载器进行加载这段shellcode即可python shellcode loaderimport ctypesimport sys
在tcp应用中,server事先在某个固定端口监听,client主动发起连接,经过三次握手后建立tcp连接。所以,对server端,通过增加内存、修改最大文件描述符个数等参数,单机最大并发TCP连接数超过10万,甚至上百万是没问题的。这明显是进入了思维的误区,65535是指可用的端口总数,并不代表服务器同时只能接受65535个并发连接。能够唯一标示网络中的进程后,它们就可以利用socket进行通信了。因此,65535代表Linux系统支持的TCP端口号数量,在TCP建立连接时会使用。
VSole
网络安全专家