magic-api magic-api
首页
  • 快速入门
  • 基础教程
  • 权限配置
  • 高级应用
  • 开发插件
  • 模块
  • 函数
  • 扩展
  • Gitee (opens new window)
  • Github (opens new window)
  • 演示 (opens new window)
  • SpringBoot配置
  • 编辑器配置
  • 2.x更新日志
  • 1.x更新日志
  • 0.x更新日志
常见问题
💖支持
交流群
首页
  • 快速入门
  • 基础教程
  • 权限配置
  • 高级应用
  • 开发插件
  • 模块
  • 函数
  • 扩展
  • Gitee (opens new window)
  • Github (opens new window)
  • 演示 (opens new window)
  • SpringBoot配置
  • 编辑器配置
  • 2.x更新日志
  • 1.x更新日志
  • 0.x更新日志
常见问题
💖支持
交流群
  • 2.x版本更新日志
  • 1.x版本更新日志
    • [v1.7.5] 2022.01.13
    • [v1.7.4] 2022.01.04
    • [v1.7.2] 2021.12.27
    • [v1.7.1] 2021.11.29
    • [v1.7.0] 2021.11.22
    • [v1.6.4] 2021.11.08
    • [v1.6.3] 2021.11.01
    • [v1.6.1] 2021.10.26
    • [v1.6.0] 2021.10.25
    • [v1.5.3] 2021.10.18
    • [v1.5.2] 2021.10.12
    • [v1.5.1] 2021.10.11
    • [v1.5.0] 2021.10.08
    • [v1.4.5] 2021.09.22
    • [v1.4.3] 2021.09.13
    • [v1.4.2] 2021.09.06
    • [v1.4.1] 2021.09.01
    • [v1.4.0] 2021.08.30
    • [v1.3.9] 2021.08.16
      • 其它更新
    • [v1.3.8] 2021.08.11
    • [v1.3.7] 2021.08.09
      • 其它更新
    • [v1.3.6] 2021.08.02
    • [v1.3.5] 2021.07.26
    • [v1.3.4] 2021.07.19
    • [v1.3.3] 2021.07.12
    • [v1.3.2] 2021.07.08
    • [v1.3.1] 2021.07.05
    • [v1.3.0] 2021.06.28
    • [v1.2.2] 2021.06.15
    • [v1.2.1] 2021.05.31
    • [v1.2.0] 2021.05.24
    • [v1.1.3] 2021.05.18
    • [v1.1.2] 2021.05.17
    • [v1.1.1] 2021.05.06
    • [v1.1.0] 2021.04.19
    • [v1.0.2] 2021.04.12
    • [v1.0.1] 2021.04.06
    • [v1.0.0] 2021.03.29
    • [v1.0.0-beta2] 2021.03.22
    • [v1.0.0-beta1] 2021.03.18
      • 新增功能
      • BUG修复
      • 优化
  • 0.x版本更新日志
  • 常见问题
  • 赞助支持
  • 交流群
  • 其它
mxd
2022-01-29
目录

1.x版本更新日志

# [v1.7.5] 2022.01.13

  • 新增try with resources语法支持
  • 修复在使用log的情况下DEBUG可能造成线程阻塞的问题
  • 修复mybatis模式中的部分转义错误
  • 修复finally代码块在部分情况表现与Java不一致的问题
  • 修复集合、数组扩展方法distinct方法返回值是Set的BUG
  • 优化扩展方法缓存,提升调用扩展方法性能
  • 优化单表拦截器API,调整UPDATE执行时机
  • 优化代码提示、错误提示

提示

1.x版本后续除了修复BUG以外不会再新增功能,新功能将在2.x版本中

目前2.x分支基本开发完毕,在1.x基础上的修改项如下:

  • 前台使用vue3重写,UI细节优化
  • 支持显示在线人数,他人正在编辑的接口。
  • 后台重构,以便更加方便的添加新功能
  • 支持i18n国际化(目前完成60%)
  • 支持定时任务在线配置
  • 备份机制重构,支持自动全量备份并从全量备份中还原。
  • 移除assert模块,改用assert语法,正在使用assert模块的,强烈建议改为assert语法,方便后续升级
  • ElasticSearch模块(开发中)
  • 解构语法(开发中)

需要体验的可以在Gitee (opens new window) 下载源码,自行编译2.x分支引入使用。

需要注意的是,2.x版本并不完全兼容1.x版本,需要从1.x版本中导出,再从2.x中的界面导入。

另外2.x版本尚未稳定,请勿在生产环境中使用。正式版本预计在春节后发布。

# [v1.7.4] 2022.01.04

  • 新增mybatis语法的<和>自动转义
  • 修复在使用 ResultProvider 时识别方法签名不正确的问题
  • 修复前端语法解析错误 I4OGMK (opens new window)
  • 修复单表save时主键primaryValue获取不到的问题 PR39 (opens new window)
  • 修复无法给数组赋值的BUG
  • 修复查询历史记录时可能未释放数据库连接的问题
  • 修复重命名分组后上传或推送可能会出现同名分组的BUG
  • 修复linq 多个left join结果不正确的BUG
  • 修复magic-script部分情况不兼容log4j的问题
  • 优化mybatis语法和?{}不兼容的问题

# [v1.7.2] 2021.12.27

  • 新增数组&集合去重函数distinct(e->e.x)
  • 新增SQL后置拦截器 I4NU79 (opens new window)
  • 新增Class扩展方法getName、getSimpleName、getCanonicalName
  • 新增Map到Bson的隐式转换,方便调用mongo相关API
  • 修复日志组件溢出时未显示滚动条的问题
  • 修复请求体JSON属性值类型修改后被还原的问题 I4N708 (opens new window)
  • 修复部分运算符优先级不正确的问题
  • 修复linq 多个left join结果不正确的BUG
  • 修复::date未传参数时错误信息不提示的问题
  • 修复...扩展运算符不支持数组的问题
  • 优化正则表达式匹配规则,解决部分情况语句解析不正确的问题
  • 优化执行结果显示,保持JSON原样输出
  • 优化代码提示,解决部分场景无法提示的问题,优化部分代码提示高亮

# [v1.7.1] 2021.11.29

  • 新增http模块的exceptBytes方法,用于返回byte[]数据
  • 修复并发情况下、MagicScriptContext会被共享的问题
  • 优化header获取,key不再区分大小写

# [v1.7.0] 2021.11.22

  • 新增支持HEAD、PATCH请求方法 I4HSB7 (opens new window)
  • 新增支持import orgssssssss.magicapi.IoUtils的方式导包(去掉需要加引号的限制)
  • 新增date_format函数,支持LocalDate、LocalDateTime等类型
  • 新增String.replace(pattern, replacement)方法
  • 新增复制接口到其他目录下 I47FV9 (opens new window)
  • 修复搜索结果部分情况高亮不正确的问题
  • 修复代码高亮部分情况不正确的BUG
  • 修复不兼容spring boot 2.6.0的问题
  • 修复>、>=、<、<=等运算符不支持BigInteger的问题
  • 修复log模块获取接口名失败时会出现异常的BUG
  • 优化collection.group的map key顺序
  • 优化代码提示、优化import提示,提示可自动导包
  • 优化页面加载速度(缩小/magic/web/classes.txt的大小)
  • 优化代码去除不必要的ThreadLocal
  • 优化代码编辑器选中样式,修复串位的问题

# [v1.6.4] 2021.11.08

  • 新增测试时显示Response Header
  • 新增支持调用map中的lambda函数
  • 新增接口选项:不接收未经定义的参数
  • 修复lambda调用自身时出现的作用域混乱的问题
  • 修复Oracle执行insert时出现的类型转换异常
  • 修复全局搜索部分情况会请求失败的问题
  • 优化编辑器字体样式,使用JetBrains Mono字体,支持连字
  • 优化mybatis的<trim>在部分情况时无法去除后缀的问题
  • 优化分页参数获取,改为配置成表达式,方便从body中获取
  • 优化拖拽目标节点能突出显示 I48MQM (opens new window)
  • 优化移动接口后定位混乱的问题
  • 优化模板字符串内的代码提示
  • 优化错误信息显示
  • 优化日志显示

# [v1.6.3] 2021.11.01

  • 新增脚本默认数据源的配置功能 I47VQF (opens new window)
  • 修复LINQ的offset设置错误
  • 修复在编辑器中下载json文件时会被识别成json结果的问题
  • 修复未在编辑器配置json结构时,请求携带RequestBody造成body为null的BUG
  • 修复json属性值类型修改后被还原问题
  • 修复mybatis的部分解析错误 I4FHWA (opens new window) I4FHT3 (opens new window)
  • 优化selectValue方法,改为取第一行第一列
  • 优化selectOne方法,改为只取第一行
  • 优化分页count语句,去除order by
  • 优化代码提示,优化import提示
  • 优化错误提示,优化变量作用域读写
  • 优化编辑器的部分快捷键,修复部分快捷键冲突的问题
  • 升级monaco-editor至0.29.1

# [v1.6.1] 2021.10.26

  • 修复设置参数类型无效的问题
  • 优化代码提示、悬浮提示、参数提示

# [v1.6.0] 2021.10.25

  • 新增mybatis if、where、set、foreach、trim等标签写法
  • 新增db.select(sqlOrXml,Map)、db.page(sqlOrXml,Map)等方法,支持传入变量信息
  • 新增new_array(String ... items)、new_array(int ... items)等方法
  • 修复在配置magic-api.response后,参数验证未通过时出现的空指针异常
  • 修复request模块部分情况获取不到HttpServletRequest的问题
  • 修复进入断点后,取消断点无效的问题
  • 修复在调用lambda时,参数与形参个数不一致会产生异常的BUG
  • 修复异步调用函数时context可能混乱的问题
  • 修复在递归调用时,变量作用域发生混乱的问题
  • 修复DEBUG模式部分情况会编译失败的问题
  • 优化?.操作符,当找不到属性时直接返回null不在抛出异常
  • 优化在使用::转数值时,自动trim处理

# [v1.5.3] 2021.10.18

  • 新增支持编译缓存容量配置
  • 新增单表API操作拦截器
  • 新增是否持久化返回结果的配置
  • 新增编辑器日志保留最多条数配置
  • 修复DEBUG时BigDecimal类型显示不正确的问题
  • 修复函数中log模块打印的日志logger name不正确的问题
  • 修复单个表达式中包含lambda会编译出错的问题
  • 修复编辑器部分组件双向绑定失效的问题
  • 修复page方法会打印两次count语句的问题
  • 优化?.操作符,支持多级嵌套
  • 优化SQL参数读取性能
  • 优化最近打开对话框的样式

# [v1.5.2] 2021.10.12

  • 新增请求参数、Header支持Date类型
  • 修复import可能出现的编译错误

# [v1.5.1] 2021.10.11

  • 新增自动打开上次未关闭的tab页的功能
  • 新增db.page(countSql,sql)方法
  • 修复在某些情况读取Cookie会出现空指针异常的BUG
  • 修复历史记录一直显示guest的BUG
  • 修复历史记录修改时间可能不显示的BUG
  • 修复在配置自动导入log模块时可能发生的空指针异常
  • 修复log模块代码提示错误的问题

# [v1.5.0] 2021.10.08

  • 新增SQL参数类型转换器::sql('clob')
  • 新增请求拦截器方法afterCompletion
  • 新增集合扩展方法find、findIndex、concat、toMap
  • 新增UI对话框最近打开功能
  • 新增UI函数、接口快速定位
  • 新增SQL日志打印配置
  • 新增单表API的primary(String, Function) 方法,用于惰性设置主键值
  • 新增单表API的NamedTable.clone、Where.clone 方法
  • 修复在未定义变量时,可能造成的变量作用域混乱的问题
  • 修复在调用第三方脚本引擎时部分变量丢失的BUG
  • 修复在有BigDecimal类型参与运算时,精度可能不正确的问题
  • 修复双重循环break会出现死循环的BUG
  • 修复linq中left join结果不正确的问题
  • 修复linq中having语句不生效的问题
  • 修复部分操作符可能无法匹配类型的问题
  • 修复脚本可能出现的OOM的BUG
  • 修复调用函数时,传入lambda可能造成的变量作用域混乱的问题
  • 修复递归调用时,变量读写混乱的BUG
  • 优化log模块日志显示,将类名改为接口+路径
  • 优化历史记录显示,增加显示修改人
  • 优化代码格式化,解决不支持1l、1m、1d等写法的问题
  • 优化测试数据源连接失败的日志
  • 优化map类型动态key值的写法,由$key改为[key]
  • 优化错误提示,更准确的行列号定位
  • 优化UI关闭按钮样式
  • 文档内容补充以及优化
  • magic-api.backup-config.database变更为magic-api.backup-config.datasource

# [v1.4.5] 2021.09.22

  • 新增创建数组方法
  • 新增支持设置字体和字号
  • 新增NamedTable、Where类的page(limit, offset)方法
  • 修复async语句不是多线程执行的问题
  • 修复在配置禁止导出时,执行导出未弹框显示无权限的BUG
  • 修复函数中出现异常,错误会混乱的问题
  • 修复高版本JDK无法创建List的问题
  • 修复可变参数无法传递数组的BUG
  • 修复在调用可变参数的方法时,可能出现的空指针的BUG
  • 修复在变量重名的情况下SQL中可能获取不到参数的BUG
  • 修复模块默认会被自动导入的问题
  • 修复在safari浏览器下打开空白的问题
  • 优化在锁定时,不在自动保存
  • 优化import语句在找不到类时抛出异常,不在返回NULL
  • 优化代码提示,修复常量不能提示的问题,优化错误提示

# [v1.4.3] 2021.09.13

  • 新增接口&函数锁定和解锁功能
  • 新增前端配置项,可配置驱动类、数据源类型、接口选项、分组选项的默认选项
  • 新增支持复制分组功能
  • 新增允许替换默认方言实现
  • 修复在配置baseURL为/开头时的拼接错误
  • 修复DEBUG时修改断点无效的问题
  • 修复含有finally代码块可能会编译出错的BUG
  • 修复NULL值在部分情况获取不正确的问题
  • 修复循环数组时,获取下标不正确的BUG
  • 修复LINQ调用时变量作用域错乱的BUG
  • 修复当对象为空调用方法时会调用函数的问题
  • 优化Swagger文档生成,固化operationId参数
  • 优化JSON序列化,解决DEBUG时的JSON序列化异常
  • 优化错误提示

# [v1.4.2] 2021.09.06

  • 修复db模块的withBlank在update时失效的问题
  • 修复部分情况编译出现的空指针异常
  • 修复字符串转义符未生效的问题
  • 修复上下文错乱的问题 I48F0L (opens new window)
  • 优化代码格式化,修复部分情况格式化不正确的问题
  • 移除非DEBUG期间的日志

# [v1.4.1] 2021.09.01

  • 新增调用函数的方法。
  • 修复DEBUG期间部分JSON结果无法序列化的问题。
  • 修复无法调用动态方法的BUG
  • 修复脚本中包含文本块格式化代码时结果不正确的问题
  • 修复刚新建的分组不能修改的问题
  • 优化历史记录显示顺序
  • 优化DEBUG时null值的显示
  • 优化在未开启UI的情况下,还会推送日志消息的问题
  • 优化逻辑删除,支持int类型的逻辑删除值。
  • 优化DEBUG时的变量显示顺序
  • 优化日志显示,多行日志收缩显示
  • fix I47QH4 (opens new window) I47VNI (opens new window)

# [v1.4.0] 2021.08.30

  • 优化脚本执行性能(使用asm编译字节码后执行)
  • 新增LINQ语法:limit offset
  • 新增支持throw语法
  • 新增支持定义数值时使用_分隔
  • 新增支持定义二进制、十六进制定义数值0b111000、0xff
  • 新增支持let、const,以及指定类型的方式定义变量
  • 新增支持模板字符串语法 `hello:${name}`
  • 新增支持数组、集合访问超出范围时直接返回null,不在抛出异常。
  • 新增集合扩展方法first、last方法,数组增加size方法
  • 新增db模块方法:count、exists、exclude、excludes
  • 新增非DEBUG期间日志显示
  • 新增支持点击鼠标滚轮关闭tab页
  • 修复在验证移动接口、函数时,获取的分组ID不是新值的问题
  • 修复分组导出内容不正确的问题
  • 修复测试带有RequestBody时无法上传文件的问题
  • 修复脚本中包含文本块格式化代码时结果不正确的问题
  • 修复lambda格式化不兼容->的问题
  • 修复iframe跨域情况下页面不显示的问题
  • 优化DEBUG时变量信息的结构查看
  • 优化页面字体,字间距,更换LOGO、暗色皮肤下异常日志颜色
  • 优化代码提示,修复部分场景语法解析错误造成的错误提示
  • 优化Swagger文档顺序,将magic-api生成的接口调至第一位
  • 优化文档结构

# [v1.3.9] 2021.08.16

  • 新增支持在测试时上传文件
  • 新增db模块更新空值的方法withBlank
  • 修复db模块在切换数据后缓存设置失效的BUG
  • 修复部分场景无法查看异常信息的问题:将异常信息改为WebSocket通讯
  • 修复数据源必填验证不正确的问题
  • 修复全量推送或上传后id发生变化导致后续不能增量推送或上传的问题
  • 优化代码提示,修复部分场景无法提示的问题
  • 优化滚动条样式(美化在火狐浏览器中的样式)
  • 优化复选框样式(解决部分浏览器复选框错位的问题)
  • 优化UI数据源编辑页面宽度
  • 优化代码提示,支持asm分支的throw语句

# 其它更新

  • 新增支持throw语法(asm分支)
  • 修复asm分支部分场景变量作用域不正确的BUG
  • 修复asm分支不能DEBUG的问题
  • 修复asm分支获取异常位置不正确的问题
  • 修复asm分支可能出现的ClassNotFoundException

提示

使用magic-script asm分支方法如下:

<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-api-spring-boot-starter</artifactId>
    <version>1.3.9</version>
    <exclusions>
        <exclusion>
            <groupId>org.ssssssss</groupId>
            <artifactId>magic-script</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-script</artifactId>
    <version>1.5.0-beta4</version>
</dependency>

# [v1.3.8] 2021.08.11

  • 修复asm分支不支持DEBUG的BUG
  • 修复asm分支异常打印可能出现空指针的问题
  • 修复未配置数据源时无法启动的问题
  • 优化代码提示,解决部分场景提示不正确的问题
  • 优化UI布局,将接口选项中的+/-移动至左侧

提示

使用magic-script asm分支方法如下:

<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-api-spring-boot-starter</artifactId>
    <version>1.3.8</version>
    <exclusions>
        <exclusion>
            <groupId>org.ssssssss</groupId>
            <artifactId>magic-script</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-script</artifactId>
    <version>1.5.0-beta3</version>
</dependency>

# [v1.3.7] 2021.08.09

  • 新增事件日志Tab页
  • 新增保存成功消息提示
  • 修复集群环境下,修改接口名字可能未同步的BUG
  • 修复无法测试druid数据源链接的问题
  • 修复在调用Java原生方法只有一个参数且是可变参数时,传入数组参数未被正确处理的BUG
  • 修复在结果预览中文件下载未显示文件名的问题
  • 修复responseBody属性拷贝丢失,受执行时浅拷贝导致设置了BaseDefinition的name导致Swagger文档生成影响的BUG
  • 修复swagger文档必填字段未显示的问题
  • 升级commons-compress至1.21
  • 优化UI底部布局,将右侧按钮挪至左侧,调整窗口最小高度,禁止拖动推送窗口。
  • 优化代码提示、优化代码高亮,兼容asm分支
  • 优化代码,兼容从低版本升级上来的参数验证、文档生成。兼容magic-script的asm分支

# 其它更新

  • 新增支持定义数值时使用_分隔(magic-script asm 分支)
  • 修复magic-script asm分支中未显示错误信息的问题

提示

使用magic-script asm分支方法如下:

<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-api-spring-boot-starter</artifactId>
    <version>1.3.7</version>
    <exclusions>
        <exclusion>
            <groupId>org.ssssssss</groupId>
            <artifactId>magic-script</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-script</artifactId>
    <version>1.5.0-beta2</version>
</dependency>

# [v1.3.6] 2021.08.02

  • 新增注释补全功能
  • 增加not_blank、not_null、is_null、is_blank、current_timestamp、print等相关函数
  • 修复未改动脚本时无法保存接口的BUG
  • 修复注销不应该验证需要登录的问题
  • 修复文件参数必填验证失效的BUG
  • 修复在使用过程中Token失效后未显示登录框的问题
  • 修复无法删除接口的BUG
  • 修复Body参数在编辑后丢失配置信息的问题
  • 修复Redis模块部分场景无法注册模块的问题
  • 修正删除接口的权限配置错误
  • 修复定义async、select 字符串时被解析成语句的BUG
  • 修复LINQ left join 缓存不正确的问题 I42W1F (opens new window)
  • 修复引用actuator组件可能造成的重复注册接口的问题 I42UYG (opens new window)
  • 优化http模块注册,解决某些场景冲突导致无法启动的问题
  • 优化状态条显示,解决一直显示开始测试...的问题

提示

此版本兼容了magic-script的asm分支,asm分支为会将脚本部分编译为字节码运行。

此外还额外支持了let、const定义变量,以及模板字符串

使用方法如下:

<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-api-spring-boot-starter</artifactId>
    <version>1.3.6</version>
    <exclusions>
        <exclusion>
            <groupId>org.ssssssss</groupId>
            <artifactId>magic-script</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.ssssssss</groupId>
    <artifactId>magic-script</artifactId>
    <version>1.5.0-beta1</version>
</dependency>

# [v1.3.5] 2021.07.26

  • 增加Boolean类型的参数定义、header定义 PR27 (opens new window)
  • 新增备份最大保留天数配置
  • 新增备份存储方式配置
  • 修复在验证Body时,无法修改数组值类型的BUG
  • 修复JS无法识别JSON数值具体类型的问题
  • 修复修改分组时报空指针的BUG
  • 修复在import接口、函数时,内部使用exit未正确返回的问题
  • 修复上传时分组冲突检测不正确的BUG
  • 修复语法高亮中注释未被正确高亮的问题
  • 优化备份判断逻辑,修改为只有脚本部分有变动时才备份。
  • 优化UI数据源Dialog
  • 优化header的get方法,解决无法修改header参数值类型的问题 PR28 (opens new window)

# [v1.3.4] 2021.07.19

  • 弃用SSE改为WebSocket通讯,同时支持集群DEBUG能力 #I3ZL4B (opens new window)
  • 新增assert语法,用于辅助校验参数。#I3ZL4Q (opens new window)
  • 新增支持import "xxx.xxx.*"的语法,导包更方便。#I3ZL4O (opens new window)
  • 新增单表API逻辑删除功能 #I40L8P (opens new window)
  • 新增提取代码中的TODO、FIXME的功能 #I3ZL3W (opens new window)
  • 新增集合扩展去重函数distinct
  • 修复在knife4j中参数默认值未显示的问题 #I40BG2 (opens new window)
  • 修复集合push函数未生效的BUG #I40NP7 (opens new window)
  • 修复magic-script中部分表达式优先级不正确造成的语法解析错误。
  • 优化magic-script中的关键词检查,去除不必要的检查造成的语法解析错误。
  • 优化在接口&函数未保存时,在上方tab页显示*号,保存后消失 #I3ZL41 (opens new window)
  • 优化远程推送的密钥字段,采用password控件 #I3ZL48 (opens new window)
  • 优化接口&函数&数据源加载,增加Loading、无数据提示 #I3ZSTI (opens new window) #I3ZSTE (opens new window)
  • 优化顶部Tab页可拖动排序 #I3ZL47 (opens new window)
  • 优化新增分组后自动定位到该位置 #I3ZSTG (opens new window)
  • 优化结果预览功能,强化非JSON结果的预览 #I3ZL4J (opens new window)
  • PR !23 更加精准的端口读取和添加 magic-api showUrl 配置提示 (opens new window)
  • PR !26 支持gp数据库方言 与PostgreSQL一致 (opens new window)

# [v1.3.3] 2021.07.12

  • 新增复制相对路径功能
  • 新增注释中的TODO、FIXME高亮
  • 修复推送重命名后的接口未被正确同步的BUG
  • 修复Swagger文档不显示ResponseBody的问题
  • 修复全局搜索中关键字高亮不正确的BUG
  • 修复不回显RequestBody、ResponseBody的注释、验证信息的BUG
  • 修复全局搜索中有时展示不出代码的BUG
  • 修复左侧树复制接口时不能弹出编辑框的BUG
  • 修复分组下没有接口时无法被搜索的BUG
  • 修复拖拽左侧菜单后右侧编辑器大小未自适应的问题
  • 优化UI权限配置,细化到分组&接口&函数&数据源上
  • 优化全量推送&上传模式的逻辑,改为强一致实现。
  • 优化顶部tab页,使其切换时始终展示在视野中
  • 优化粘贴RequestBody时,自动对key添加双引号
  • 优化代码提示新增方法参数、返回值说明
  • 优化全局搜索对话框,隐藏滚动条、修正显示范围

# [v1.3.2] 2021.07.08

  • 新增PUSH权限配置
  • 修复推送需要验证登录的BUG
  • 修复单表API中in方法拼接SQL不正确的BUG
  • 修复修改分组名称可能出现的空指针异常
  • 修复编辑器不显示RequestBody的问题
  • 修复编辑器中请求方法全部显示为GET的BUG
  • 优化部分UI中的英文,改为中文描述

# [v1.3.1] 2021.07.05

  • 新增支持自定义选择接口推送和导出 #I3TRT4 (opens new window)
  • 新增国产化数据库人大金仓kingbase方言适配 #I3YCN2 (opens new window)
  • 新增主动刷新功能,用于在未开启集群配置且使用同一个存储不能同步的问题。
  • 修复DEBUG``会造成多次验证的BUG
  • 修复设置参数类型不生效的BUG
  • 优化UI样式,将右上角不常用的图标移至右下角、以及左侧菜单优化

# [v1.3.0] 2021.06.28

  • 新增RequestBody文档注释、属性校验,ResponseBody 文档注释
  • 新增response模块的getOutputStream方法
  • 新增UI配置项defaultExpand,用于配置是否默认展开
  • 修复上传时由于读取顺序无序导致结果错乱的问题
  • 修复Swagger文档注释被名称覆盖的问题
  • 修复在调用save时,Oracle数据库可能出现空指针的BUG
  • 优化UI上传接口对话框,全量上传时增加确认框
  • 优化UI左侧树,新增defaultExpand默认是否展开配置
  • 优化UI复制路径功能,不在弹出对话框提示。
  • 优化Swagger文档生成,兼容knife4j处理
  • 优化匹配数据库方言的方式,解决部分驱动不支持获取URL的问题

# [v1.2.2] 2021.06.15

  • 新增自定义构建异常结果接口
  • 新增启动后接口URL打印
  • 修复在删除分组后,无法上传该分组的BUG
  • 修复可能存在的循环引用的BUG
  • 优化UI左侧树搜索,不在区分大小写
  • 优化单表API,新增支持delete方法、save方法增加beforeQuery参数,用于判断数据是否存在的判断标准

# [v1.2.1] 2021.05.31

  • 新增远程推送功能
  • 新增注销登录功能
  • 修复上传不支持数据源的问题
  • 修复搜索未验证是否登录的问题
  • 优化UI右键菜单,增加图标
  • 优化上传逻辑,分为增量模式和全量模式

# [v1.2.0] 2021.05.24

  • 新增支持集群部署
  • 新增数据源增删改查接口,可持久化保存数据源
  • 修复在拦截器中抛出异常时,界面不显示结果的BUG
  • 修复Oracle查询单行单列值时,返回值带有ROW_ID的问题
  • PR !13 解决swagger文档使用knife4j时不兼容,无法显示接口详情的问题 (opens new window)
  • PR !14 [!]fix swagger文档使用knife4j时接口文档中query类型参数的数据类型显示不正确的问题(不影响swagger原生UI) (opens new window)
  • 优化前端代码,在请求时剔除无用字段,避免一些可能存在的错误。
  • 优化后端代码,删除@Deprecated方法
  • 迁移magic-api-spring-boot-starter、magic-editor到magic-api仓库中

# [v1.1.3] 2021.05.18

  • 新增获取函数、接口详情的接口
  • 修复无法创建分组的BUG

# [v1.1.2] 2021.05.17

  • 新增支持配置json结果code值
  • 新增接口、函数、分组的增删改查接口。
  • 修复在测试、删除数据源时未释放链接的问题
  • 修复分组无法移动的问题
  • 优化设置RequestEntity时机
  • 优化构建分页结果接口,增加RequestEntity、Page参数
  • 优化对SpringBoot的兼容性
  • 优化UI样式,修复部分样式错位问题

# [v1.1.1] 2021.05.06

  • 修复调用context.get时可能获取不到变量值的问题
  • 修复http模块在某些情况下无法携带hedaer的BUG
  • 修复无法创建druid数据源的BUG
  • 修复在以组件方式引入时可能造成重复保存的BUG
  • 优化SQL拦截器,增加参数RequestEntity
  • 优化Swagger中的RequestBody改为非必填

# [v1.1.0] 2021.04.19

  • 新增分组选项、分组路径变量配置
  • 新增json、stringify 转换器,用于字符串转JSON和JSON转字符串
  • 新增全局搜索功能
  • 新增阻止页面关闭的配置
  • 新增数据源参数maxRows
  • 新增http模块(基于RestTemplate)
  • 新增单表API方法orderBy、groupBy
  • 新增单表API方法notNull、notBlank 用于过滤where中非空参数
  • 修复断点会自动清除的BUG
  • 修复使用redis存储时无法删除接口的BUG
  • 修复脚本不支持new内部类的问题
  • 优化测试逻辑,测试时将serverURL参数当为baseURL,不在拼接处理
  • 优化swagger文档生成,支持path参数
  • 优化UI样式,显示接口的请求方法

# [v1.0.2] 2021.04.12

  • 新增示例项目 magic-api-example (opens new window)
  • 新增错误提示超时时间配置
  • 新增单表APIdelete方法
  • 修复oracle执行插入无法返回主键的问题
  • 修复单表API中save方法返回的不是主键的问题
  • 优化代码提高兼容性,不在强制要求配置数据源

# [v1.0.1] 2021.04.06

  • 新增uuid函数
  • 新增任意值到Boolean类型的隐式转换
  • 修复无法访问静态内部类的问题
  • 修复无法给没有初始值的变量进行赋值的BUG
  • 修复无法将接口移动到接口分组上(没有分组路径)的BUG
  • 修复移动接口可能造成接口重复的问题
  • 修复编辑器可能无法显示内容的BUG
  • 修复编辑器中RequestBody可能被覆盖的问题
  • 修复在使用达梦数据库时,无法使用数据库存储的问题
  • 修复在使用文件存储时无法创建数据源的BUG
  • 优化方法调用的悬浮提示
  • 优化带有可变参数的代码提示
  • 优化单表API,列名现在可以从驼峰命名转为下划线
  • 优化单表API的save方法,在执行插入时可设置主键值
  • 优化单表API的主键非空判断逻辑,由!=null转为notBlank
  • 优化集合函数filter,不在强制要求返回Boolean类型
  • 优化部分代码,提取一些魔法字符串到常量类中

# [v1.0.0] 2021.03.29

  • 新增自定义用户名密码登录验证
  • 修复函数列表、数据源管理 拖动样式不正确的问题
  • 修复解析文件内容时因意外的格式造成的解析错误
  • 修复readonly在db、redis存储不生效的问题
  • 修复数据源管理中异常信息显示不正常的BUG
  • 修复无法为JavaBean属性赋值的BUG
  • 修复在RequestBody填写错误时,无法执行测试的BUG
  • 修复在配置Long转String时,历史记录时间显示不正确的问题
  • 优化UI权限配置,使其更细致化
  • 优化获取接口选项值的接口
  • 优化前端读取配置的逻辑,使其更实用
  • 优化前端验证逻辑,路径变量中的value为必填
  • 优化脚本备份逻辑,减少备份次数
  • 优化部分代码,兼容Gson,使其不在报错

# [v1.0.0-beta2] 2021.03.22

  • 新增动态数据源管理(可在页面动态修改数据源)
  • 新增路径变量验证
  • 修复打成jar包后无法导出接口的BUG
  • 修复复选框未回显的问题
  • 修复在新增函数时,参数类型不回显的问题
  • 修复不能关闭跨域配置的BUG
  • 修复打包后无法读取js配置文件的问题
  • 修复权限配置不正确的BUG
  • 修复配置抛出异常无效的BUG
  • 优化JSON构建接口,参数统一封装,减少方法
  • 优化读取资源逻辑,增强数据库兼容性
  • 优化日志打印,方便排除错误
  • 优化模拟测试,增加支持路径变量配置

# [v1.0.0-beta1] 2021.03.18

# 新增功能

  • 新增存储资源配置项(可在配置文件中配置存储方式)
  • 新增强制只读模式
  • 新增单表操作API
  • 新增接口参数类型、默认值配置
  • 新增接口参数验证、header验证功能(支持必填、表达式和正则验证)
  • 新增自定义响应结构配置(可在配置文件中配置响应结构)
  • 新增语法 ```language ``` ,可执行对实现JSR223规范的脚本语言,也可自定义
  • 新增接口导入、导出功能
  • 新增跨域开关配置,现在可以关闭跨域功能

# BUG修复

  • 修复历史记录排序不正确的问题
  • 修复可能无法加载后台设置的编辑器配置的BUG
  • 修复缓存在指定有效期时可能无效的BUG
  • 修复驼峰命名转换在列名全大写时未转换的问题
  • 修复三元表达式在赋值语句中表现不正确的BUG

# 优化

  • 优化代码编辑器,增加是否要自动保存的配置
  • 优化变量定义,现在可以省略赋值语句。
  • 优化Json构建接口,增加RequestEntity参数可获取request、response、接口等相关参数及配置
  • 优化数据库、redis资源读取逻辑,加快启动速度
  • 优化linq语法,linq关键字不在区分大小写
  • 优化UI界面,替换部分图标,增加tab页图标,方便区分接口、函数
  • 优化方法调用,lambda表达式可隐式转换为Java的FunctionalInterface接口
  • 优化方法调用,允许调用接口的default方法
上次更新: 2025-05-03 23:57:14
2.x版本更新日志
0.x版本更新日志

← 2.x版本更新日志 0.x版本更新日志→

Theme by Vdoing | Copyright © 2020-2025 ssssssss.org | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×