前后端分离场景中,大家怎么快速展示db里的数据呢

新手上路,请多包涵

前后端分离场景中,大家怎么快速展示db里的数据呢,每次新增一个表,都需要新增后端对应api,有没有更快速的方法无需新增API,页面就可以展出新增表的内容。若能够做到无需新增API也能把连表查询的内容也展示出来是更好的。

之前有想过,提供一个后端API,入参为sql查询语句,API将入参sql执行的结果返回,此API限制只能访问从db,限制必须是查询语句并且限制查询记录数。

虽然此方法可以解决上边的问题,但sql暴露出去,还是不安全的。

想大家有没有更好的解决办法呢。

阅读 1.7k
2 个回答

如果是Spring项目的话,可以参考Spring Data REST

只需要做的就是建实体,建仓库,仓库上加注解,增删改查、分页、排序,所有的接口都有了。

官方文档:Spring Data REST - Spring.io

示例代码:

@RepositoryRestResource(path = "Tax")
public interface TaxRepository extends JpaRepository<Tax, Long> {
    Tax findByMinPriceLessThanAndMaxPriceGreaterThanEqual(BigDecimal priceMin, BigDecimal priceMax);
}

我是不推荐这样的,因为没法做到权限控制,接口全都是开放的,导致后台不安全。我是在实验中这样用的,实际项目中不敢用。

关于一些Spring Data REST的配置可以参考我的这篇文章,软件设计与编程实践总结 - 梦想开始的地方

新手上路,请多包涵

我刚来腾讯的时候做了个 Web 框架叫 ServerPlus,其实就是楼主这种理念,后台表跟前端无关,需要加接口也不需要找后端同学提需求。

这个框架完全基于 RESTful 资源的概念,把数据表抽象成 Model,只需要在路由层指明路由对 Model 的映射就能做到基本的查询、关联查询等功能。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏