使用 GraphQL 做数据服务如何实现自动化
資深大佬 : jiobanma 20
目前在做一个基础数据服务
需要的功能其实就是数据聚合,以及按需查询,按需返回(方便前端使用)。 搭建的 demo 使用到的工具是 SpringBoot+GraphQL+Mybatis+PgSQL
实现方式
定义 scheam 文件,程序解析 scheam,Fechers 里像以前的 restful 服务一样调用 service,通过 Mybatis 从数据库获取数据,然后按照 scheam 定义的结构将数据塞到 Object 或者 List 中。
遇到的问题:
如上述实现方式,发现一个问题就是并没有简化代码实现。当我的数据库中有改动,比如增加字段。按照上述实现方式,我需要修改 scheam 、修改 JavaBean 、修改 Fechers 数据获取逻辑、修改 MyBatis 中 xml 的 sql 语句。而这种实现方式可能最直观的好处就是前端使用更加方便了,但对于服务来说,修改一个数据库字段,需要修改的内容太多了。
期望的效果
有没有什么实现思路,让服务做更少的事情?比如修改数据库字段后,对于代码的修改很少,或者尽可能的不修改代码,而是通过配置去响应修改内容(类似于热部署的需求)。 简而言之,尽可能的实现自动化或半自动化?
大佬有話說 (2)