关于是否使用基于Annotation的spring boot graphql服务器的指导

adi*_*ava 3 annotations graphql graphql-java graphql-spqr

我正在使用 spring boot 和 graphql 开发一个新项目。我对如何继续感到困惑,因为有两种方法可以开发它,一种是通过 graphqls 文件和基于注释的方法。我更喜欢基于注释的方法,但它们稳定吗?例如: https: //github.com/leangen/graphql-spqr

kaq*_*qao 5

我赞同AllirionX 的回答,只是想添加一些细节。

首先,回答你的问题:是的,SPQR已经相当稳定了一段时间了。许多团队已在生产中成功使用它。它仍处于 0.X 版本的唯一原因是缺乏文档,但 API 中偶尔会发生一些小的重大更改。

其次,我还想补充一点,代码优先并不意味着你不能也遵循合同优先。事实上,我认为你仍然应该以这种方式进行开发。唯一的区别是您可以将合约编写为 Java 接口而不是新语言。

正如我在SPQR 的自述文件中强调的那样:

请注意,以代码优先风格进行开发实际上仍然是模式优先,不同之处在于您不是使用另一种语言而是使用 Java 来开发模式,并使用 IDE、编译器和所有工具来帮助您。对架构的重大更改意味着编译将失败。不需要短绒或其他脆弱的黑客。

因此,API(如接口所描述的)是否随着其他代码的变化而变化完全取决于您。如果您出于任何原因需要 SDL,它始终可以从可执行模式或内省结果生成。