Java开发API接口可以不用写Controller了!

网友投稿 137 2024-01-24

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

上边是官方对工具的介绍,但好像还是没明白它是干什么的,接下来咱们演示一下,你就会觉得它很哇塞 了 环境 首先pom.xml 引入magic-api核心包magic-api-spring-boot-star

terorg.ssssssssmagic-api-spring-boot-starter0.7.1mysqlmysql-connector-javaruntime application.yml 配置更简单,数据库(没数据库操作可以不写)和magic-api的基础

信息magic-api: web:/magic/web#UI请求的界面以及UI服务地址 server: port:9999 spring: datasource: driver-class-name:com.mysql.jdbc.Driver password:xinzhifu521 url:jdbc:mysql://47.93.6.5:3306/magic-api username:root

好了~ 到这环境就搭建完成! 在具体演示之前先吐槽一下用Java开发API的缺点,首当其冲的就是啰嗦,尤其是在工期紧,功能需快速迭代的时候,既要严格执行开发规范,又不能耽误工期,即便最简单的一个API接口,也要写对应的 Controller、Service、Dao、Mapper、DTO、VO等类,尽管这些基础编码有对应的代码生成器,但维护起来还是相当麻烦,magic-api起到一个很好的辅助作用,少写了很多代码。

实践 直接打开magic-api可视化界面,看到如下的界面。

创建一个分组,其中分组前缀为一组API接口的访问根目录,相当于@Controller("/order")注解。

接着在分组中创建接口 order_detail,页面配置接口的基础信息,接口名称、请求路径、请求方法、请求参数、请求header等,接口直接return返回内容return‘小富最帅’

在页面访问刚刚创建接口的全路径,发现已经成功返回数据。

也可以直接拼JSON格式数据直接返回

如果URL传参 /order_detail/{id},导入request模块获取参数importrequest; a=path.id 到这一个简单的API接口就开发完了,而此时我们还未在项目中写一行代码

但上边只是静态数据,在实际开发中往往要与数据库打交道,magic-api提供了一些类似于python开发中的模块化组件,例如引入import db 模块,直接执行SQL语句会返回JSON格式数据,省略了很多中间步骤。

magic-api语法与Java的差异不大,不过更加精简了一些,只要写过Java对它学习成本并不高,比如常用得for循环,也会有普通和lambda多种写法varsum=0; varlist=[1,2,3,4,5]; for(valinlist){ sum=sum+val; } list.e。

ach(it=>sum+=it+1) 这里我只简单的介绍了使用,还有很多高级特性,比如:调用Java API、集成redis、Mongo等,感兴趣的同学自己看下官方文档吧,它还提供了很多语法demo,拿来即用就好。

心得 magic-api在我整个项目赶工期的过程中可谓是居功至伟,节省了一大半的开发时间,不仅后端开发接口效率显著提升,对前端联调帮助也很大 前后端从开始就定义好数据结构,后端快速提供静态数据接口,前端用真实接口联调,后端补充完业务逻辑后无缝替换成真实数据,这样做到同步开发,前端也不用只写伪代码等接口联调了。

magic-api虽然可以提高开发效率,但是实际应用中我也只敢把它用在一些逻辑相对简单,偏配置类接口,核心业务还是要按“规矩 ”办事,毕竟系统稳定、安全才是最重要的。 审核编辑:刘清

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:华为云 API 图像识别 Image 的趣味性—AI 识别迈克尔·杰克逊
下一篇:手机号码在网时长 API 实现广告投放和精准营销案例分析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~