前后端分离场景中,大家怎么快速展示db里的数据呢,每次新增一个表,都需要新增后端对应api,有没有更快速的方法无需新增API,页面就可以展出新增表的内容。若能够做到无需新增API也能把连表查询的内容也展示出来是更好的。
之前有想过,提供一个后端API,入参为sql查询语句,API将入参sql执行的结果返回,此API限制只能访问从db,限制必须是查询语句并且限制查询记录数。
虽然此方法可以解决上边的问题,但sql暴露出去,还是不安全的。
想大家有没有更好的解决办法呢。
前后端分离场景中,大家怎么快速展示db里的数据呢,每次新增一个表,都需要新增后端对应api,有没有更快速的方法无需新增API,页面就可以展出新增表的内容。若能够做到无需新增API也能把连表查询的内容也展示出来是更好的。
之前有想过,提供一个后端API,入参为sql查询语句,API将入参sql执行的结果返回,此API限制只能访问从db,限制必须是查询语句并且限制查询记录数。
虽然此方法可以解决上边的问题,但sql暴露出去,还是不安全的。
想大家有没有更好的解决办法呢。
我刚来腾讯的时候做了个 Web 框架叫 ServerPlus,其实就是楼主这种理念,后台表跟前端无关,需要加接口也不需要找后端同学提需求。
这个框架完全基于 RESTful 资源的概念,把数据表抽象成 Model,只需要在路由层指明路由对 Model 的映射就能做到基本的查询、关联查询等功能。
6 回答3.4k 阅读✓ 已解决
8 回答3.6k 阅读
2 回答2.7k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
2 回答1.8k 阅读✓ 已解决
4 回答1k 阅读
4 回答2k 阅读
如果是
Spring
项目的话,可以参考Spring Data REST
。只需要做的就是建实体,建仓库,仓库上加注解,增删改查、分页、排序,所有的接口都有了。
官方文档:Spring Data REST - Spring.io
示例代码:
我是不推荐这样的,因为没法做到权限控制,接口全都是开放的,导致后台不安全。我是在实验中这样用的,实际项目中不敢用。
关于一些
Spring Data REST
的配置可以参考我的这篇文章,软件设计与编程实践总结 - 梦想开始的地方